概要
记录一些数组相关的刷题集。
数组数据结构早就写过了,一直没有写相关的刷题集。今天补上。
26. 删除有序数组中的重复项
leetcode26题
题目如上图;也可以去leetcode 看下这个题目。
代码Python
Python代码实现
class Solution: def removeDuplicates(self, nums: List[int]) -> int: slow, fast = 0, 1 while fast < len(nums): if nums[fast] != nums[slow]: slow = slow + 1 nums[slow] = nums[fast] fast = fast + 1 return slow + 1
189. 轮转数组
leetcode 189题
题目如上图,看不清,可以去看下leetcode。代码如下。
代码Python
class Solution: def rotate(self, nums: List[int], k: int) -> None: """ Do not return anything, modify nums in-place instead. """ n = len(nums) nums[:] = nums[-k % n:] + nums[:-k % n]
小结
数组刷题总结
以前是用c++写的,这次专门用python写了一遍。其实,思路整体没变,第一题,是快慢指针;第二题,是一个算法。快慢指针,都是一个思路,2个指针,往后循环,框架写出来,直接套公式;第二题这种算法,就是递推公式推出来,就好了。好了,翻篇。