<오늘 한 일>
- 강의 듣기
자료구조/알고리즘
- 자료구조/알고리즘 강의 2-6강까지 수강함
- 자료구조/알고리즘 2주차 (1강~6강) — 구민정의 개발일지 (tistory.com)
장고 실무 심화
선발대 2일차
- 모듈, 패키지, 라이브러리의 차이
- 모듈 : 실행 가능한 파이썬 파일
- 패키지 : 모듈의 집합 (이름 공간)
- 라이브러리 : 패키지의 집합 (미리 준비한)
- 외부 라이브러리 관리 -> 의존성 관리
- pip와 venv : 패키지 관리 도구와 가상환경 모듈
- pipenv : pip로 패키지 관리할 때의 단점을 개선한 고급 패키지 관리 도구
- poetry : pipenv랑 비슷한데 요즘 poetry를 많이 사용한다고 함
<오늘 새롭게 배운 것>
- Array vs LinkedList
- LinkedList는 그냥 List로 불리기도 함
- 차이점
경우 | Array | LinkedList |
특정 원소 조회 | O(1) | O(N) |
중간에 삽입/삭제 | O(N) | O(1) |
데이터 추가 | 데이터 추가 시 모든 공간이 다 차버렸다면 새로운 메모리 공간을 할당 받아야 함 | 모든 공간이 다 찼어도 맨 뒤의 노드만 동적으로 추가하면 됨 |
정리 | 데이터에 접근하는 경우가 빈번하다면 Array를 이용하자 | 삽입과 삭제가 빈번하다면 LinkedList를 사용하는 것이 더 좋다 |
- 파이썬의 list는 array로 구현되어 있음
- 그렇지만 파이썬의 배열은 LinkedList로 쓸 수도 있고 array로도 쓸 수 있게 만든 효율적인 자료구조라고 함
<느낀 점>
- 강의 듣느라 알고리즘 문제를 못 풀었다 이런
- 선발대 강의 뭔가 이해가 가면서도 머리에 잘 들어오는지는 모르겠다 후발대 가야 하나...?
<내일 목표>
- 알고리즘 문제 2문제 이상 풀기!!!!
- 장고 심화 강의 2, 3주차 수강하기