💻Development
-
[이진 탐색] 문제 이름 : 부품 찾기 - 배열 Sort, Binary SearchAlgorithm/유형별 문제 풀기 2021. 11. 18. 11:33
문제 설명 가게의 부품이 총 5개일 때 부품 번호가 다음과 같다고 하자. N = 5 [8, 3, 7, 9, 2] 손님은 총 3개의 부품이 있는지 확인 요청했는데 부품 번호는 다음과 같다. M = 3 [5, 7, 9] 이때 가게 안에 손님이 원하는 부품이 모두 있는지 확인하는 프로그램을 작성해보자. 사용 개념 탐색 문제 해결 아이디어 비교 대상이 되는 값들을(가게의 부품 번호) 배열에 저장하므로, java.util.Arrays 에서 제공하는 sort()로 정렬하고, binarySearch() 사용하여 탐색함 코드 import java.util.Arrays; import java.util.Scanner; public class Q1 { public static void main(String[] args) {..
-
[이진 탐색] 개념정리Algorithm/개념정리 2021. 11. 18. 10:25
순차 탐색 리스트 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 차례대로 확인하는 방법 '보통 정렬되지 않은 리스트'에서 데이터를 찾아야 할 때 사용함 리스트 내에 데이터가 아무리 많아도 시간만 충분하다면 항상 원하는 원소(데이터)를 찾을 수 있다는 장점 시간 복잡도: O(N) → 데이터의 개수가 N개일 때 최대 N번의 비교 연산이 필요함 이진 탐색 : 반으로 쪼개면서 탐색하기 조건: 배열 내부의 데이터가 정렬되어 있어야 함 → 데이터가 무작위일 때는 사용할 수 없지만, 이미 정렬되어 있다면 매우 빠르게 데이터를 찾을 수 있음 특징: 탐색 범위를 좁혀가며 데이터 탐색 가능함 이진 탐색은 위치를 나타내는 변수 3개를 사용함(탐색하고자 하는 범위의 시작점, 끝점, 중간점) 찾으려는 데이터와..
-
[정렬] 개념정리 글 모음 - List<T>, 사용자 정의 객체, 배열Algorithm/개념정리 2021. 9. 30. 11:17
List 정렬 2021.08.18 - [Algorithm/유형별 문제 풀기] - [정렬] 문제 이름 : 위에서 아래로 - List 정렬, Collections 2021.09.16 - [Algorithm/유형별 문제 풀기] - [정렬] 문제 이름 : 성적이 낮은 순서로 학생 출력하기 - 객체 정렬, List, Collection 사용자 정의 객체 정렬 2021.07.30 - [Algorithm/HackerRank] - [Greedy] 문제 이름 : University Career Fair - 사용자 정의 클래스 객체 정렬 배열 정렬 2021.09.30 - [Algorithm/유형별 문제 풀기] - [배열 정렬] 문제 이름 : 두 배열의 원소 교체