| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
- 알고리즘
- 노마드 코더
- 공부를 가장한 일기일지도
- IT 지식
- nomadcoders
- 이해할 수 있는
- CodeStates
- 비전공자를 위한
- Do it! 시리즈
- javascript
- SQLD
- 제로베이스
- 백준
- 톺아보기
- 티스토리챌린지
- 자격증
- 모던 자바스크립트 deep dive
- 노개북
- 엘리스코딩
- 구름edu
- SQL 개발자
- 프로그래머스
- 오블완
- 자바스크립트
- K-Digital Credit
- 최원영 저자
- boj
- 노마드코더
- js
- 개발자북클럽
- Today
- Total
개발자를 희망하는 초보의 자기개발 이야기
IT 5분 잡학사전 6일차 본문

TIL (Today I Learned)
2023.10.12
오늘 읽은 범위
에피소드 22 ~ 에피소드 25
책에서 기억하고 싶은 내용
에피소드 22 (자료구조와 알고리즘은 필수라고?)
- 알고리즘이란? 컴퓨터에게 내리는 지시 사항을 나열한 것
- 자료구조는 데이터를 효율적으로 보관하고 찾기 위한 것이다.
- 데이터 크기 기준, 인덱스 기준, 생성 시간 기준 등 종류가 매우 다양하고 이에 따라 프로그램 속도가 달라진다.
에피소드 23 (배열이 뭐죠?)
- 시간 복잡도는 프로그램의 작업 속도가 얼마나 빠른지 측정하는 방법이다.
- 배열은 램에 줄줄이 이어진 형태로 공간을 차지하고 있다.
- 컴퓨터는 배열의 시작 주소와 길이를 알고 있어서 읽는 속도가 아주 빠르다.
- 배열은 맨 앞부터 차곡차곡 채워져 있어서 처음이나 중간에 삽입 또는 삭제할 때 나머지 데이터를 처리하기 위한 시간이 소요된다.
- 따라서 속도는 읽기 > 검색 > 삽입 = 삭제 순이다.
에피소드 24 (알고리즘의 속도는 어떻게 표현할까?)
- 시간 복잡도는 알고리즘으로 작업을 완료할 때까지 걸리는 절차의 수를 N을 이용해서 O(N)과 같이 표현한다.
- 이를 빅오 표기법이라 한다.
- 이 표기법을 사용하는 이유는 ①설명하기 간단하고, ②어떤 알고리즘을 사용할지 파악이 용이하기 때문이다.
- 배열에서 특정 인덱스를 읽어올 경우 바로 데이터를 확인할 수 있으므로 O(1)이 된다.
- 상수시간(constant time)내에 실행된다고 이야기 하기도 한다.
- 검색의 경우 배열의 전체 길이만큼 시간이 걸리므로 O(N)이 된다.
- 이중 반복문의 경우 N(배열의 전체 길이)*N(배열의 전체 길이에서 비교할 데이터)만큼 검색해야 하기 때문에 O(N2)이 된다.
에피소드 25 (검색 알고리즘이 뭐죠?)
- 선형 알고리즘은 배열의 처음부터 검색을 시작해서 원하는 데이터가 나타날 때까지 검색하는 방식으로 O(N)에 해당한다.
- 이진 검색 알고리즘은 배열의 중앙에서 검색을 시작하여 찾으려는 숫자와 중앙값을 비교해 찾는 방식으로 O(logN)에 해당한다.
- 거대한 배열을 다룰 때 효과적이지만, 데이터가 정렬된 상태여야 사용할 수 있다.
오늘 읽은 소감은?
오늘로써 총 272페이지 중 절반이상인 153페이지까지 읽었다. 코테 문제 풀때 OO 알고리즘을 사용해서 풀면 됩니다. 와 같은 답안을 보면 '그게 뭔데?' 라는 생각과 함께 코드만 봐서는 원리를 이해하기 힘들었으나 이번 에피소드에서 그림과 함께 설명해주니 원리, 해당하는 시간복잡도, 어떻게 구현해야 하겠다는 것까지 바로 파악할 수 있었다.(!)
니꼬샘의 알고리즘, 자료구조 강의 같은게 따로 나와도 좋을 것 같다. 뒷 챕터가 기대된다.
궁금한 내용이나 잘 이해되지 않는 내용은?
이진 검색 알고리즘 구현원리는 처음 선택한 중앙값이 만약 찾는 값보다 크면 그 값은 새로운 최댓값이 되며, 작으면 그 값은 새로운 최솟값이 된다.(!)
이진 검색 알고리즘 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 이진 검색 알고리즘(binary search algorithm)은 오름차순으로 정렬된 리스트에서 특정한 값의 위치를 찾는 알고리즘이다. 처음 중간의 값을 임의의 값으로 선택하여,
ko.wikipedia.org
나의 최애 북틸
1. 노마드코더 자체에서 우수 감상평으로 추천한 블로그로 같은 티스토리가 맞나 싶게 이쁘고 내용도 표로 이쁘게 정리해서 작성하셨다.
'Books/IT 5분 잡학사전' 카테고리의 글 목록
노르의 프로그래밍 기록 사이트🏕️
codingmyoni.tistory.com
2. 마찬가지로 노마드코더에서 추천한 우수 감상평 블로그로 개조식으로 글 정리를 잘 하셨다. 나는 서술식으로 글을 쓰는 편인데 개조식으로 쓰는게 너무 어렵고 부러운 능력중 하나다.
'Book TIL' 카테고리의 글 목록
개발공부하는 블로그
min88.tistory.com
3. 구글링 중 발견한 블로그로 노마드코더 북클럽 챌린지를 같은 기간에 진행하고 있는 것으로 확인했다. 마찬가지 깔끔한 정리에 자극을 받게 되는 블로그였다. 나만 구구절절 글 쓰는 듯 ㅡㅜ..
설뭉이의 하루
sarah322.tistory.com
'도서 > 노개북 IT 5분 잡학사전' 카테고리의 다른 글
| IT 5분 잡학사전 10일차 (0) | 2023.10.17 |
|---|---|
| IT 5분 잡학사전 5일차 (0) | 2023.10.11 |
| IT 5분 잡학사전 4일차 (0) | 2023.10.10 |
| 노개북 IT 5분 잡학사전 2일차 (0) | 2023.10.08 |
| 노개북 IT 5분 잡학사전 1일차 (0) | 2023.10.07 |