LeetCode 复习
Xxwl.
道阻且长。
展开
-
LeetCode 面试题 排序矩阵查找
LeetCode 面试题 排序矩阵查找题目:给定M×N矩阵,每一行、每一列都按升序排列,请编写代码找出某元素。例:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]]给定 target = 5,返回 true。给定 target = 20,返回 false。思路:每行递增,可以按行进行二分法查找代原创 2020-12-31 17:35:42 · 193 阅读 · 0 评论 -
LeetCode 面试题 部分排序
LeetCode 面试题 部分排序题目:给定一个整数数组,编写一个函数,找出索引m、n;将索引区[m,n]的元素排好序,整个数组就是有序的,n-m尽量小,即找出符合条件的最短序列,函数返回值为[m,n];若不存在返回[-1,-1]。例:输入: [1,2,4,7,10,11,7,12,6,7,16,18,19]输出: [3,9]思路:对于元素i,若a[i]左边存在大于a[i]的元素,则a[i]参与排序;若a[i]右边存在小于它的元素,则a[i]也参与排序。故只需要找到最靠右的数,且这个数左边存在原创 2020-12-31 17:27:53 · 146 阅读 · 0 评论 -
LeetCode 面试题 最小差
LeetCode 面试题 最小差给定两个整数数组a和b,计算具有最小差绝对值的一对数值(每个数组中取一个值),并返回该对数值的差例:输入:{1, 3, 15, 11, 2}, {23, 127, 235, 19, 8}输出: 3,即数值对(11, 8)思路:双指针,分别对两个数组进行排序,然后设定返回值为最大,利用双指针求解代码:class Solution{public: int smallDifference(vector<int> &a, vector&l原创 2020-12-31 17:25:43 · 270 阅读 · 0 评论 -
LeetCode 面试题 峰与谷
LeetCode 面试题 峰与谷在一个整数数组中,“峰”是大于或等于相邻整数的元素,相应地,“谷”是小于或等于相邻整数的元素。例如,在数组{5, 8, 4, 2, 3, 4, 6}中,{8, 6}是峰, {5, 2}是谷。现在给定一个整数数组,将该数组按峰与谷的交替顺序排序。例:输入: [5, 3, 1, 2, 3]输出: [5, 1, 3, 2, 3]思路:奇数为谷,偶数为峰 ,若i为峰则判断当前位置是否小于前一个位置(前一个为谷),若小于则交换,大于则不处理;若i为谷,则判断当前位置是否大原创 2020-12-31 11:00:40 · 324 阅读 · 1 评论 -
Leetcode面试题 一次编辑
仅用于自学 侵删原创 2020-12-30 22:55:53 · 79 阅读 · 0 评论 -
Leetcode面试题 数对和
LeetCode 面试题 数对和题目:设计一个算法,找出数组中两数之和为指定值的所有整数对,一个数只能属于一个整数对。例如:输入 nums=[5,6,6],target = 11输出[[5,6]]思路: 利用unordered_map 存储每个数组元素i的出现个数,若target-i出现过,就一起放入返回容器中,并将target-i出现的次数减1,否则将i的出现次数+1。对于nums中的每个元素进行遍历如果不存在target - i则将x存入哈希表中m[i]++,等待匹配如果存在的话表明原创 2020-12-30 22:44:52 · 196 阅读 · 0 评论