일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- C언어
- for
- 변수
- 백준
- FOR문
- Scanner
- IF문
- IFELSE
- 파이썬프로그래밍기초
- 데이터
- error
- 알고리즘
- 1차원배열
- IF
- Scanner class
- 기본
- 백준알고리즘
- 하드웨어
- 유비쿼터스
- 함수
- 배열
- 스캐너클래스
- Spring
- 자바
- 반복문
- MySQL
- java
- 스캐너
- 자료구조
- java프로그래밍
- Today
- Total
목록binarysearch (2)
정리하고기록하자

백준(JAVA) - 수 찾기 (1920) 문제 N개의 정수 A[1], A[2], …, A[N]이 주어져 있을 때, 이 안에 X라는 정수가 존재하는지 알아내는 프로그램을 작성하시오. 나의 생각 1. 첫번째 배열 크기 정하기 2. 첫번째 배열 원소 넣기 3. 비교할 배열 크기 정하기 4. 비교할 배열 원소 넣기 5. 비교할 배열에 원소 넣고 그 순번에 맞춰 이진 탐색으로 일치하면 1 / 아니면 0 return 하기 생각은 잘했네 1. 첫번째 배열 크기 정하기 2. 첫번째 배열 원소 넣기 Scanner sc = new Scanner(System.in); int[] arr = new int[sc.nextInt()]; // 처음 입력 된 배열 크기 선언 for(int i = 0 ; i < arr.length; i..

이진 탐색 개념과 원리 정렬된 상태의 입력 데이터에 대한 효과적인 탐색 방법이다. 오름차순으로 정렬되었다고 가정되었을때 탐색 방법 배열의 가운데 원소 A[mid]와 탐색키 x를 비교한다. 탐색키 = 가운데 원소 => 탐색 성공 ( 인덱트 mid 반환 후 종료 ) 탐색키 이진탐색 ( 원래 크기 1/2 인 왼쪽 부분배열 ) 순환 호출 탐색키 > 가운데 원소 => 이진탐색 ( 원래 크기 1/2 인 오른쪽 부분배열 ) 순환 호출 *이진탐색 ( 원래 크기 1/2 인 왼쪽 부분배열 ) / 이진탐색 ( 원래 크기 1/2 인 오른쪽 부분배열 ) 탐색을 반복할 때마다 대상 원소의 개수가 1/2씩 감소 한다. 분할 배열의 가운데 원소를 기준으로 왼쪽과 오른쪽 부분배열로 분할한다. 탐색키와 가운데 원소..