704. 二分查找
直接贴代码:
class Solution(object):
def search(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: int
"""
left = 0
right = len(nums)
# 左闭右开
while left < right:
middle = left + (right - left) // 2
if nums[middle] > target:
right = middle
elif nums[middle] < target:
left = middle + 1
else:
return middle
return -1
class Solution(object):
def search(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: int
"""
left = 0
right = len(nums) - 1
# 左闭右闭
while left <= right:
middle = left + (right - left) // 2
if nums[middle] > target:
right = middle - 1
elif nums[middle] < target:
left = middle + 1
else:
return middle
return -1
27. 移除元素
class Solution(object):
def removeElement(self, nums, val):
"""
:type nums: List[int]
:type val: int
:rtype: int
"""
slow, fast = 0, 0
size = len(nums)
while fast < size:
if nums[fast] != val:
nums[slow] = nums[fast]
slow += 1
fast += 1
return slow
再上一下暴力法:
class Solution(object):
def removeElement(self, nums, val):
"""
:type nums: List[int]
:type val: int
:rtype: int
"""
i = 0
size = len(nums)
while i < size:
if nums[i] == val:
for j in range(i+1, size):
nums[j - 1] = nums[j]
size -= 1
i -= 1
i += 1
return size
因为之前就知道卡哥,看过一部分算法讲解的题目,所以对前几道题印象很深刻,重新看了一遍就可以写出来了!
记录一下当前时间2024年3月20日23:17:05
今天下班十点多了,很累,但是想想这是第一天,不能太惯着自己了,坚持就是胜利,万事开头难。加油!!!(已经累到没什么想法了,赶紧洗澡睡觉了(¦3[▓▓] 晚安)