•
문제 링크 : leetcode.com
•
문제 설명 : 오름차순으로 정렬된 두 숫자 목록중 가장 먼저 확인되는 공통 숫자를 반환, 없다면 -1
•
풀이 방법
◦
오름차순인점을 사용하여, 더 작은 숫자를 일때만 인덱스를 이동시키며 순회하며 비교했다.
•
시간복잡도 :
•
성공 코드
class Solution:
def getCommon(self, nums1: List[int], nums2: List[int]) -> int:
nums1_cursor = 0
nums2_cursor = 0
# 둘 중 하나의 숫자목록을 모두 탐색한다면 종료
while nums1_cursor < len(nums1) and nums2_cursor < len(nums2):
# 같은 수를 발견하면 바로 종료
if nums1[nums1_cursor] == nums2[nums2_cursor]:
return nums1[nums1_cursor]
# 현 인덱스가 더 작은 값을 가진 인덱스를 조정(오름차순이기 때문)
elif nums1[nums1_cursor] < nums2[nums2_cursor]:
nums1_cursor += 1
elif nums1[nums1_cursor] > nums2[nums2_cursor]:
nums2_cursor += 1
return -1
Python
복사