성장일지
유튜브 본문
함수의 디테일에는 관심이 없다.
프린트를 2번해도 O(1)
큰 원리에만 관심
상수에 신경을 쓰지 않는다.
=> O(1) O(n) O(n^2)
이진탐색은 O(log n)
반을 나눠서 탐색하는걸 반복하기 때문에
시간복잡도 : 알고리즘이 얼마나 빠르고 느린지 측정 => 시간 측정X 단계로 측정
비휘발성 메모리 : 하드
휘발성메모리 : 램 (껏다키면 사라짐)
js, python은 배열 길이 알아서 핸들링
=> C와 비교해서 느림
많은 자료를 읽어야 한다면 배열이 좋음 => 데이터의 시작이 어디인지를 정확히 집어내기 때문
메모리는 데이터를 넣은 박스라고 생각 but 박스는 닫혀있음 (안을 하나하나 접근해서 확인해야됨)
=> 읽는것보다 searching 이 더 어렵고 오래걸림
선형검색 : 처음부터 하나하나 열어봄
배열에 추가하는 경우: 공간이 충분하다면 뒤쪽의 있는걸 옮기고 그 다음껄 옮기고 반복..... 공간이 부족하다면 새로운 배열 만들고 똑같이
배열에서 삭제하는 경우 : 없애고 남은 공간을 채우기 위해 뒤쪽 요소들을 하나씩 앞으로 옮김