코틀린 알고리즘2 [Kotlin] 유클리드 호제법 알고리즘 유클리드 호제법이란? 2개의 자연수의 최대공약수를 구하는 알고리즘이다. 기본 과정 예시로 32와 24의 최대공약수를 구하면, 32는 24로 나누어 떨어지지 않기 때문에, 32를 24로 나눈 나머지를 구한다. => 8 32는 8로 나누어 떨어진다. 따라서 32와 24의 최대공약수는 8이다. 예제 코드1. 재귀 함수를 사용 package algorithm import java.io.BufferedReader import java.io.InputStreamReader fun main() { val bf = BufferedReader(InputStreamReader(System.`in`)) val number = bf.readLine().split(" ") val a = number[0].toInt() val .. 2022. 10. 24. [Kotlin] 이진 탐색 알고리즘 이진 탐색이란? 정렬된 리스트의 중간 값을 이용해 검색 값을 줄여 가면서 원하는 값을 찾는 알고리즘 탐색 과정 정렬된 리스트의 중간값을 찾는다. 찾는 수가 중간값보다 크면 오른쪽으로, 작으면 왼쪽으로 검색 범위를 좁힌다. 1, 2번을 반복한다. 이 과정을 반복하면 그냥 반복문을 이용해 찾는 것보다 더 빠르게 원하는 숫자를 찾을 수 있다. 예제 코드 숫자의 범위와 원하는 숫자를 입력하고 이진 탐색으로 그 숫자를 찾는 알고리즘 package algorithm import java.io.BufferedReader import java.io.InputStreamReader fun main() { val bf = BufferedReader(InputStreamReader(System.`in`)) val array.. 2022. 10. 21. 이전 1 다음 728x90