当前位置:实例文章 » 其他实例» [文章]代码随想录算法训练营第一天| 704二分查找,27移除元素,35搜索插入位置,34

代码随想录算法训练营第一天| 704二分查找,27移除元素,35搜索插入位置,34

发布人:shili8 发布时间:2025-03-14 10:43 阅读次数:0

**代码随想录算法训练营第一天**

作为一名初学者,我很高兴能够参加代码随想录的算法训练营。第一天的内容非常丰富,涵盖了四道经典问题:704、二分查找、27、移除元素、35、搜索插入位置和34、不少于1500字。

**1.704、二分查找**

二分查找是一种常见的算法技巧,用于在一个有序数组中找到目标值。给定一个整数列表 `nums` 和一个目标值 `target`,请编写一个函数来返回 `target` 的索引。如果 `target` 不在列表中,则返回 `-1`。

def search(nums, target):
 left, right =0, len(nums) -1 while left <= right:
 mid = (left + right) //2 if nums[mid] == target:
 return mid elif nums[mid] < target:
 left = mid +1 else:
 right = mid -1 return -1


**2.27、移除元素**

给定一个整数列表 `nums` 和一个目标值 `val`,请编写一个函数来返回列表中 `val` 的数量。

def removeElement(nums, val):
 i =0 for j in range(len(nums)):
 if nums[j] != val:
 nums[i], nums[j] = nums[j], nums[i]
 i +=1 return i


**3.35、搜索插入位置**

给定一个整数列表 `nums` 和一个目标值 `target`,请编写一个函数来返回 `target` 的插入位置。如果 `target` 已经存在于列表中,则返回其索引。

def searchInsert(nums, target):
 left, right =0, len(nums) -1 while left <= right:
 mid = (left + right) //2 if nums[mid] == target:
 return mid elif nums[mid] < target:
 left = mid +1 else:
 right = mid -1 return left


**4.34、不少于1500字**

这个问题没有具体的描述,但是我们可以尝试解释一下。可能是要求我们写一个函数来处理一些特定的场景或者数据。

def process_data(data):
 # 这里可以添加任何需要的逻辑和代码 pass


**总结**

第一天的内容非常丰富,涵盖了四道经典问题。通过解决这些问题,我们能够更好地理解算法技巧和编程思想。希望在接下来的日子里,我能够继续学习和成长!

其他信息

其他资源

Top