개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
자료구조와 알고리즘은 코드를 효율적으로 만들기위해 꼭 필요하다.
배열에서 읽기, 검색, 추가, 삭제 하는 과정에서의 시간 복잡도는 작업 속도이다.
알고리즘의 속도는 O(N) 으로 표기한다.
TIL (Today I Learned) 날짜
2023. 12. 14
오늘 읽은 범위
Ep22. 자료구조와 알고리즘은 필수라고? ~
Ep25. 검색 알고리즘이 뭐죠?
책에서 기억하고 싶은 내용을 써보세요.
알고리즘은 컴퓨터에게 내리는 지시 사항을 나열한 것으로 패스파인더 알고리즘, 압축 알고리즘 등이 있다.
자료구조에는 데이터 크기 기준, 검색을 위한 인덱스 기준, 생성 시간 기준 등 프로그램의 목적에따라 매우 다양한 방식이 있다.
시간 복잡도는 자료구조와 알고리즘을 공부할 때 꼭 알아야 할 개념이다.
메모리에는 휘발성과 비휘발성이 있는데 C드라이브, D드라이브와 같은 하드 드라이브는 비휘발성이고, RAM은 휘발성이다.
배열은 맨 앞부터 채워져 있어야 하기 때문에 삽입과 삭제가 느리다.
알고리즘의 속도를 표현하는 방법은 Big-O 표기법으로 O(N)으로 표기한다.
Big-O 표기법에서 N은 검색횟수, 즉 코드의 실행횟수이다.
선형 검색 알고리즘은 처음부터 하나씩 찾기때문에 배열 길이가 길어지는 만큼 검색 시간도 길어진다.
이진 검색 알고리즘은 중앙값을 기준으로 양쪽으로 찾기때문에 거대한 배열을 다룰 때 효과적이지만 배열이 항상 정렬되어 있어야한다.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
java를 배울때도 배열이 조금 헷갈렸었는데 이렇게 설명을 봐도.. 알 것 같으면서도 어렵네요! 실제로 코드를 작성해서 많이 실행해봐야할 것 같다는 생각이 듭니다!
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
오늘 읽은 다른사람의 TIL
hwayoon님의 TIL (https://nomadcoders.co/community/thread/8850)
skhan20님의 TIL (https://nomadcoders.co/community/thread/8867)
정리가 꼼꼼하고 설명이 자세해서 좋았습니다.
bhgong님의 TIL(https://nomadcoders.co/community/thread/8866)
정리가 심플하고 깔끔해서 인상깊었습니다.