탐색 알고리즘 - 선형탐색, 이진탐색, 이진트리 탐색
1. 선형탐색(Linear Search Algorithm / Sequential Search Algorithm) - 리스트에서 특정한 값을 찾는 알고리즘의 하나. 리스트에서 찾고자 하는 값을 맨 앞에서부터 끝까지 차례대로 찾아 나간다. - 검색할 리스트의 길이가 길면 비효율적이지만, 검색방법 중 가장 단순하여 구현이 쉽고, 정렬되지 않은 리스트에서도 사용할 수 있다. - 예를 들어, 알파벳_list라는 리스트가 있다고 치자. 1알파벳_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']cs 이렇게 10개의 알파벳 string을 가지고 있다. 이 경우 우리가 하나의 알파벳을 뽑아낸다고 할 때, 최고의 경우(best case)는, 'a'를 뽑아낼 때이다. 뽑..
2016. 5. 3.
[Project Euler 37] 왼쪽이나 오른쪽에서 한자리씩 없애가도 여전히 소수인 수의 합은?
소수 3797에는 왼쪽부터 자리수를 하나씩 없애거나 (3797, 797, 97, 7) 오른쪽부터 없애도 (3797, 379, 37, 3) 모두 소수가 되는 성질이 있습니다.이런 성질을 가진 소수는 단 11개만이 존재합니다. 이것을 모두 찾아서 합을 구하세요.(참고: 2, 3, 5, 7은 제외합니다) 이번엔 문제가 간단해 보여서 수도 코드를 짜지 않았다.소수가 나왔으므로 역시나 primesieve 모듈을 사용했다.처음엔 아래 적어놓은 조건대로 for loop를 돌릴까 했으나, primesieve가 훨씬 편해서... 아래는 테스트코드
2016. 4. 29.