![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数组
会飞的猪宝宝啊
这个作者很懒,什么都没留下…
展开
-
LeetCode 2.1.5:已知两个有序的数组,找其中的中位数
问题描述:已知两个有序的序列,找到他们的中位数,复杂度要求O(log(m+n)) 问题分析: 代码: class Solution { public: double FindMin(const vector<int> &A,const vector<int> &B) { const int m = A.size(); const in...原创 2018-11-15 15:36:52 · 106 阅读 · 0 评论 -
LeetCode2.1.1:给定排序的数组,删除重复的位置,以便每个元素只出现一次。 并返回新的长度
问题描述:给定排序的数组,删除重复的位置,以便每个元素只出现一次。并返回新的长度。 注意:不要为另一个数组分配额外的空间,必须在常量内存中这样做。 例如,给定的输入数组A=[1,1,2], 你的函数应该返回长度=2,而A现在是[1,2]。 分析:由于是排好序的,那么相同的元素必定相邻,所以可以比较相邻元素是否相同, 首先使用一个 i 指向数组的第一个元素,从第二个元素j开始遍历数组, 如果后一个...原创 2018-11-14 16:49:34 · 415 阅读 · 0 评论 -
LeetCode2.1.2 :RemoveDuplicates扩展
问题描述:Follow up for ”Remove Duplicates”: What if duplicates are allowed at most twice? For example, Given sorted array A = [1,1,1,2,2,3], Your function should return length = 5, and A is now [1,1,2,2,3...原创 2018-11-14 17:15:32 · 179 阅读 · 0 评论 -
LeetCode2.1.3:二分查找
问题描述:二分查找 分析:确定左右边界 class Solution { public: int Fun(vector<int>&arr,int key) { int mid = 0; int start = 0; int end = arr.size(); while(start <= end) { ...原创 2018-11-14 17:45:55 · 108 阅读 · 0 评论 -
LeetCode2.1.4:循环数组里面找key
问题描述:给定一个没有重复元素的旋转数组(它对应的原数组是有序的),求给定元素在旋转数组内的下标(不存在的返回-1)。 例子 有序数组{0,1,2,3,4,5,6,7}对应的旋转数组为{3,4,5,6,7,0,1,2}(左旋、右旋效果相同)。 查找元素5,返回结果2; 查找元素8,返回结果-1 问题分析: 有序的旋转数组可以拆分成两个递增的数组,两个数组分别有序的。 每次根据right和...原创 2018-11-14 19:09:26 · 275 阅读 · 0 评论