刷题面试笔记
此为面试和数据结构的练习专栏
Dachao1013
华为全栈工程师一枚,多分享,多总结,加油!
微信号yc299792
欢迎来扰
展开
-
leetcode刷题笔记(七)—双指针双索引的用法遍历数组二
前言接上一篇的双索引问题1、给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组 [4,3] 是该条件下的长度最小的连续子数组。进阶:如果你已经完成了O(n) 时间复杂度的解法, 请尝试 O(n ...原创 2019-12-16 16:51:00 · 432 阅读 · 0 评论 -
leetcode刷题笔记(六)—双指针双索引的用法遍历数组
碎碎念这一篇我把代码和注释都写在一起了,应该都是能看懂的# 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。# # 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。# # 说明:# # 返回的下标值(index1 和 index2)不是从零开始的。# 你可以假设每个输入只对应唯一的答案,而且你不可以重...原创 2019-12-16 09:51:51 · 323 阅读 · 0 评论 -
leetcode刷题笔记(五)—三路快排算法
快速排序算法取两个游标left,right,初始状态为最左和最右,取一个基准值base然后准备写循环体,当left比right小的时候,我们先从右边找比基准值小的数字,找到以后,把它放在left上,再去从左边找比基准值大的数字,找到以后把它放在右边当循环退出的时候,left=right,这时左边一定比base小,右边一定比base大,把base放上去即可然后再对左边数组重复上述操作,右边...原创 2019-12-15 18:28:06 · 214 阅读 · 0 评论 -
leetcode刷题笔记(四)-数组相关的问题
描述:1、给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 def moveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ #...原创 2019-12-15 10:43:34 · 208 阅读 · 0 评论