728x90
반응형

ChatGPT를 이용하여 코딩 공부를 해보려 한다. 

100일 동안 공부하고 기록할 것이다. 

많이 읽어주시고 항상 감사하다. (훈수는 항상 환영한다.)

 

Day 27~28: 탐색 알고리즘 (2)

  • 선형 탐색, 이진 탐색.
  • 실습:
    • 정렬된 리스트에서 이진 탐색으로 특정 숫자 찾기.

 

Day 28: 이진 탐색

2. 이진 탐색 (Binary Search)

  • 개념: 정렬된 리스트에서 중앙값을 기준으로 탐색 영역을 절반으로 줄여가며 값을 찾습니다.
  • 시간 복잡도:
    • 최선/평균/최악: O(log⁡n)O(\log n).
  • 특징: 리스트가 반드시 정렬되어 있어야 사용 가능.

알고리즘:

  1. 리스트의 중간값과 목표값을 비교.
  2. 목표값이 중간값보다 작으면 왼쪽 절반, 크면 오른쪽 절반에서 탐색.
  3. 값을 찾거나 리스트의 범위가 없어질 때까지 반복.

오늘의 실습 내용이다.

 

  • 정렬된 리스트에서 이진 탐색으로 특정 값을 찾는 프로그램 작성.
  • 재귀 방식과 반복문 방식을 비교.
  • 사용자가 입력한 값으로 탐색 실행.

먼저 재귀방식과 반복방식의 프로그램을 만들어야 한다.

 

 

이게 재귀방식 프로그램이다.

 

 

이건 반복방식이다.

 

 

설정한 숫자들과 필요한 값들을 출력해주는 프로그램을 만들어주었다.

 

 

그 후 내가 찾고자하는 숫자를 입력하면 내가 원하는 내용이 출력된다.

 

오늘은 이만 

 

읽어주셔서 감사하다.

반응형

+ Recent posts