TIL (Today I Learned)
2025.06.21
오늘 읽은 범위
__에피소드 26 정렬 알고리즘이 뭐죠?
__에피소드 27 스택, 큐가 뭐죠?
__에피소드 28 해시 테이블이 뭐죠?
__에피소드 29 개발자 필수 소양, 클린 코드!
책에서 기억하고 싶은 내용을 써보세요.
*정렬 알고리즘
(오름차순정렬)
버블 정렬 : 두개씩 비교해서 스왑, 마지막 항목에 가장 큰 수가 되도록 하나씩 정렬을 마쳐가는 방식 O(N²)
선택 정렬 : (전체항목체크해서 가장 작은 수를 변수에 저장, 맨 처음 수와 스왑) 처음 부터 하나씩 정렬을 마쳐가는 방식 O(N²)
Big O는 버블 정렬과 같지만 2개이상의 빠른 속도 ( N번의 스왑을 하지 않고 1번의 스왑)
삽입 정렬 : (인덱스 1번부터 선택해 왼쪽이 작은 수인지 확인, 작다면 스왑을 인덱스를 줄여가면 반복 ) 인덱스를 늘려가면서 비교
속도 차이
삽입 > 선택 > 버블
*해시테이블
키,값 : 읽기, 추가, 삭제 , 검색 - 모두 : 시간 복잡도 O(1)
배열의 시간 복잡도 O(N)
해시테이블은 배열을 베이스로 작동, 빠른 이유는 해시함수 때문 , 충돌이 있는 경우 내부배열을 만들고 선형검색( 항상 O(1) 은 아님 )
*클린코드
그 자체로 이해되는 코드가 좋은 코드
검색이 가능한 이름을 써라 |
함수이름은 동사를 써라 : 하나의 역할을 하는 함수 |
3개 이하의 인수를 가지는 함수 |
Boolean 값을 함수에 보내지마다 |
짧은 변수명, 축약형 변수명을 쓰지마라 |
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
버블, 선택, 삽입정렬을 이해한 듯한 기분
궁금한 내용이 있거나, 잘 이해되지 않은 내용이 있다면 적어보세요
해시함수
세줄 요약
*Big 0가 같더라도 알고리즘에 따라 성능이 다르다.
*해시테이블 : O(1) : 빠르다.
*클린코드 책을 읽자
반응형
'보유 > 책' 카테고리의 다른 글
IT 5분 잡학사전 - 노마드 코더 ( Nomad Coders ) 챌린지 11-12일 (1) | 2025.06.24 |
---|---|
IT 5분 잡학사전 - 노마드 코더 ( Nomad Coders ) 챌린지 10일 (2) | 2025.06.22 |
IT 5분 잡학사전 - 노마드 코더 ( Nomad Coders ) 챌린지 7일 (0) | 2025.06.20 |
IT 5분 잡학사전 - 노마드 코더 ( Nomad Coders ) 챌린지 6일 (2) | 2025.06.18 |
IT 5분 잡학사전 - 노마드 코더 ( Nomad Coders ) 챌린지 4-5일 (0) | 2025.06.17 |