def twoSum(nums, target):
nums.sort()
l, r = 0, len(nums)-1
while l < r:
if nums[l] + nums[r] > target:
r = r-1
elif nums[l] + nums[r] < target:
l = l+1
elif nums[l] + nums[r] == target:
return True
return False
print(twoSum(nums=[2,3,0,5], target=4))
-> 시간복잡도 O(nlogn)
일단 리스트를 정렬을 한 후, two pointer 방식을 사용해서 양 끝에서 값을 대입하여 찾는 식으로 해결을 하였다.
https://leetcode.com/problems/two-sum/