- 博客(3)
- 收藏
- 关注
原创 双指针与滑动窗口
双指针构建滑动窗口滑动窗口原理滑动窗口: 整个窗口是在目标数组上滑动的,窗口的大小是快指针和慢指针之间的子数组,同过窗口的滑动以及窗口的收缩,在快指针遍历完一次数组后,得到符合条件的子窗口,并记录下来。注意: 滑动窗口的是一个先扩张,后收缩的过程,每次遍历只有快慢指针中的一个指针中的一个移动。在编程过程中,判断何时开始收缩是关键。滑动窗口实现例题:分析: 在此题中,滑动窗口开始收缩的条件是子数组的总和大于target。代码实现:int minSubArrayLen(int target,
2021-07-04 00:11:33
310
原创 二分法原理及实现
二分法原理及实现二分法原理EG:在一个有序的数组中,要想快速的找到目标元素。可以考虑运用二分法,相比于常规的遍历搜索,二分法的时间复杂度是log(n),其原理非常的简单,首次遍历先把整个数组分成两部分,用left,right,mid三个值来划分,首次比较即可省去一半的遍历数据,1/2,1/4,1/8,…直到找到目标元素。二分法实现例题:代码实现:二分法实现// 二分法int search(vector<int>& nums, int target) {
2021-07-02 11:59:52
1534
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人