728x90
728x90

선형 탐색(Linear Search) / 순차 탐색(Sequential Search)

  • 배열의 길이에 비례하는 시간 소요 → O(n)
  • 최악에는 모든 원소를 비교해야!

 

이진 탐색(Binary Search)

  • 탐색하려는 배열이 이미 정렬되어 있을 때 적용
    • 크기순으로 정렬되어 있다는 성질 이용
  • 한 번 비교할 때마다 배열이 반씩 줆 → O(log n)

 

Big-O Notation

  • 알고리즘 복잡도(Complexity of Algorithms)를 표현
    • 선형 시간 알고리즘 - O(n)
      • 선형 탐색
    • 로그 시간 알고리즘 - O(log n)
      • 이진 탐색
    • 이차 시간 알고리즘 - O(n²)
      • 삽입 정렬(insertion sort)
    • 낮은 복잡도를 가지는 정렬 알고리즘
      • 병합 정렬(merge sort) - O(nlog n)

 

출처: 프로그래머스 스쿨 6강: 알고리즘 복잡도
728x90

'KDT AI 2nd (Grepp)' 카테고리의 다른 글

[TIL] DAY 4 - 트리(Tree)  (0) 2021.04.22
[TIL] DAY 3 - 스택(Stack), 큐(Queue)  (0) 2021.04.21
[TIL] DAY 1 - 정렬(Sort)  (0) 2021.04.20
728x90

정렬(Sort)

  • 문자열 길이순으로 정렬(sort)할 때는 키(key)를 지정
  • >>> L=['abcd', 'xyz', 'spam']
    >>> sorted(L, key=lambda x: len(x))
    ['xyz', 'abcd', 'spam']
  • 이때 상대적인 순서는 변경되지 않음
  • >>> L=['spam', 'xyz', 'abcd']
    >>> sorted(L, key=lambda x: len(x))
    ['xyz', 'spam', 'abcd']

 

출처: 프로그래머스 스쿨 3강: 정렬(Sort), 탐색(Search)

 

 

Notion & Slack

회사에서 미니 프로젝트 때 git까지 붙여서 잠깐 사용한 적이 있는데
팀원 대부분이 낯설어하기도 했고 프로젝트가 활성화되지 못해서 맛만 본 정도였다.

노션은 비교적 최근에 강의노트 작성이나 오답 정리를 위해 새 계정을 생성했는데 손이 쉽게 가지 않는다.

이번 기회에 좀 더 친해질 수 있도록 노력해 봐야겠다.

 

오타랑 태그 수정하다가 작성 일자가 19일에서 20일로 변경 😱
728x90

'KDT AI 2nd (Grepp)' 카테고리의 다른 글

[TIL] DAY 4 - 트리(Tree)  (0) 2021.04.22
[TIL] DAY 3 - 스택(Stack), 큐(Queue)  (0) 2021.04.21
[TIL] DAY 2 - 탐색(Search), Big-O Notation  (0) 2021.04.20
728x90