binary(2)
-
이진 탐색
이진 탐색의 시간 복잡도: O(logN) 정렬되지 않은 길이 N의 리스트에서 M개의 값을 이진 탐색으로 찾을 때 시간 복잡도: O((M+N)*logN) 길이 N의 리스트 정렬하기: O(N*logN) 정렬된 길이 N의 리스트에서 M번 이진 탐색하기: O(M*longN) 1. 재귀 함수로 구현한 이진 탐색 코드 # 이진 탐색 소스코드 구현(재귀 함수) def binary_search(array, target, start, end): if start > end: return None mid = (start + end) // 2 # 찾은 경우 중간접 인덱스 반환 if array[mid] == target: return mid # 중간점의 값보다 찾고자 하는 값이 작은 경우 왼쪽 확인 elif array[mid]..
2021.06.28 -
리트코드 Populating Next Right Pointers in Each Node 코드 및 해설 (파이썬)
https://leetcode.com/problems/populating-next-right-pointers-in-each-node/description/ Populating Next Right Pointers in Each Node - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com BFS를 이용해 풀이했습니다. 먼저 root와 root의 depth인 1을 각각 다른 queue에 넣어주고 queue가 빌 때까지 다음을 반복합니다. 각 queue의 맨 첫번째 요소..
2021.06.23