[노개북] IT잡학사전 7일차 : 22장~ 25장
오늘 TIL 요약
- 알고리즘을 알면 효율적인 코딩 개발이 가능하다
- 배열은 연속적인 메모리 공간을 사용하는 효율적인 자료 저장 방식이다
- 알고리즘의 연산 횟수와 데이터 길이의 비율(빅오 표기법)로 알고리즘의 성능을 측정, 비교한다
TIL (Today I Learned) 날짜
2023-8-31
오늘 읽은 범위
p.132~153
책에서 기억하고 싶은 내용을 써보세요.
- 알고리즘은 어떤 과정을 효율적으로 하기 위한 방법, 지시사항들을 나열한 것
- 빠르게 길찾기 같은 거
- 알고리즘을 모른다고 개발을 할 수 없는 건 아니지만 효율적으로 코딩할 수 없다
- 자료구조는 자료를 효율적으로 관리하기 위한 자료를 보관하는 방식
- 메모리는 컴퓨터의 기억공간, 저장된 위치와 상관없이 일정한 접근 속도, 주소로 검색하는 특성
- 배열은 연속해서 붙어있는 공간을 배정하는 것
- 검색원리 : 배열의 첫번째 위치에서 n번째의 데이터를 찾아달라 지시
- 데이터 추가 삭제 : 연속으로 되어있기 때문에 끝에 추가/삭제하기는 쉽고, 앞으로 갈수록 어렵다
- 알고리즘의 속도는 검색 횟수와 데이터 길이에 어느정도 비율인지(고정인지, 비례인지, 제곱비례인지 등...) 표시하는 Big-O 표기법으로 표시
- O(1), O(N), O(log N) 등
- 숫자일 수록 괄호 안의 값이 낮을수록 속도가 빠르다
- 검색 알고리즘 : 배열안의 숫자 찾기
- 선형 검색 : 처음부터 순서대로 찾아가기 O(N)
- 이진 검색 : (숫자가 순서대로 정렬되었다는 조건) 반으로 나눠 어느쪽에 속하는지 확인하고 그 과정을 계속하면서 검색하는 방법 O(log N)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
개발 분야에서 배워야 할 것이 최적의 알고리즘이나 자료구조를 찾는 것에도 있는데, 이 영역도 공부를 시작하고 더 잘 알고 싶다
나의 최애 북틸
- dolfin 님 꺼 : 공감가는 10%의 확신과 90%의 어 이게 왜 되지 사진
- yelm-ing 님 꺼 : 왜? 의 질문이 마음에 들어서. 할법한 궁금증이다
- hy.jang 님 꺼 : 가장 먼저 올린 용기