ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [노개북 챌린지] TIL 2023.02.23
    노마드코더/노개북 챌린지 2023. 2. 23. 15:25

     

     

    📖 오늘 읽은 범위

    에피소드 22 ~ 에피소드 25

     

     

     

    📝 책에서 기억하고 싶은 내용

    알고리즘이란? 컴퓨터에게 내리는 지시 사항을 나열한 것

     - 패스파인더 알고리즘 : 목적지까지 최대한 빨리 가는 방법을 알려주는 기능을 구현하기 위해 사용

     - 압축 알고리즘 : 이미지를 최대한 덜 손상하면서 용량을 효율적으로 줄일 수 있는 알고리즘

     

    알고리즘은 코드를 효율적으로 만들기 위해, 자료구조는 데이터를 효율적으로 보관하고 찾기 위해 공부해야 한다!

     


     

    배열의 원리

     - 배열은 램에 줄줄이 이어진 형태로 공간을 차지하고 있다.

     - 컴퓨터는 배열의 시작 주소와 길이를 알고 있다. 그래서 배열은 읽는 속도가 아주 빠르다.

     - 배열은 맨 앞부터 차곡차곡 채워져 있어야 한다. 그래서 배열은 삽입과 삭제가 느리다.

     


     

    Big-O 표기법

     - 시간 복잡도 : O(N)

     - 이차 시간 복잡도 : O(N^2)

     


     

     

    선형 검색 (linear search)

     - 배열의 길이가 길어지는 만큼 검색 시간도 길어짐

     

    이진 검색 (binary search)

     - 정렬이 끝난 배열에서만 사용 가능

     - 배열의 중앙에서 검색을 시작함

     - 배열의 길이가 길어져도 검색 시간이 확 커지지 않음

     

     

     

    🙂 오늘 읽은 소감

    오늘은 알고리즘에 대한 내용이 나와서 개인적인 얘기를 조금 하자면, 

    개발자에게 수학이 필수는 아니지만 잘하면 좋은 것 같다.

    알고리즘을 풀다 보면.. 수학적 지식이 부족함을 너무나도 느끼게 되기 때문에..

    백준이나 프로그래머스에서 쉬운 문제들만 풀고 있긴 하지만

    꾸준히 풀수록 조금씩이라도 느는게 느껴지니, 계속 풀어보는게 중요하다고 생각한다.

     

    Big-O 표기법을 따로 찾아봐야겠다!

     

     

     

    궁금한 내용, 잘 이해되지 않는 내용

     

     

     

     

    댓글