개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
컴퓨터는 배열의 시작주소와 길이를 알고 있고, 맨 앞부터 차곡차곡 쌓여 있어서 (중간)삽입과 삭제 등의 속도가 오래 걸린다.
Big-O 표기법으로 대략적인 알고리즘의 시간 복잡도를 파악할 수 있고, 실행 단계에 영향을 주는 요소만을 고려한다. O(N), O(N^2) 등.
검색 알고리즘으로는 선형 검색 알고리즘보다는 이진 검색 알고리즘이 더 자주 쓰이는데, 대산 배열이 항상 정렬되어 있어야 한다.
TIL (Today I Learned) 날짜
2024.01.11.
오늘 읽은 범위
22~25장
책에서 기억하고 싶은 내용을 써보세요.
이진 검색의 경우 y=logx의 그래프 형태를 보여, 데이터가 아무리 많아진다해도 시간이 그렇게 많이 오래 걸리지 않는다.
이차시간의 경우 배열 길이가 길어질 수록 작업 속도는 제곱배로 느려지고 이를 O(N^2)으로 표현할 수 있음
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
코드에서 배열 중 일부 삭제하는 것이 생각보다 복잡하구나- 느꼈고, JS에서 특정 위치의 원소를 삭제, 추가하는 것 외에도 굳이 shift()나 pop(), push()같은 함수가 따로 있는 이유도 알 것 같다. 시작이나 끝에서 작업을 하면 훨씬 쉽게 할 수 있으니 본질적으로 돌아가는 원리 자체가 다르지 않을까? 하는 생각.
사실 ep26까지 미리 읽긴 했는데 O(N), O(N^2)는 정말 단순화 된, 알고리즘의 속도에 대한 개략적인(=산술적이냐, 기하급수적이냐) 정보만을 주는 것 같고, 나중에는 좀 더 열심히 공부해서 알아보고 싶다는 생각이 들었다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
오늘 읽은 다른사람의 TIL
blueskyto님 : 책 요약에 그치지 않고 본인의 생각을 많이 말씀해주시는 것 같다.
stayby16님 : 책에서 기억하고 싶은 내용을 장별로 상세히 적어주셔서 복습에 도움이 많이 된다.(https://blog.naver.com/amiee4822/223318368528)
dapeng님 : 각 장마다 상세한 요약을 해주셔서 책을 다시 읽는 느낌이었다! https://dhjutest.tistory.com/21?category=1072738