@刷题第一天 重新刷力扣!开始找工作!!!
Leetcode 704 and 27
目的:
1. 复习数组理论基础 , python数组等
2. 复习binary search algorithm.
知识点1:
数据结构基础:数组与 python
Python编程语言数组数据结构,python中数组分类
- static and dynamic array
- List, Tuple, String, array.arr
- Property: a fixed or dynamic array with corresponding index.
知识点2:
Binary Search Algorithm:
复杂度分析:O(Logn)
注意:左闭右开或者左开右闭,按照一种来;
题目:
leetcode 704
class Solution:
def search(self, nums: List[int], target: int) -> int:
left = 0
right = len(nums)-1
while left<=right:
mid = (right-left)//2+left
if nums[mid]>target:
right = mid-1
elif nums[mid]==target:
return mid
else:
left = mid+1
return -1
Leetcode 27 two pointer
start, end = 0, len(nums) - 1
while start <= end:
if nums[start] == val:
nums[start], nums[end], end = nums[end], nums[start], end - 1
else:
start +=1
return start