排序问题
ggaoda
这个作者很懒,什么都没留下…
展开
-
leetcode-462.最少移动次数使数组元素相等
给你一个长度为n的整数数组nums,返回使所有数组元素相等需要的最少移动数。在一步操作中,你可以使数组中的一个元素加1或者减1。原创 2022-07-25 10:49:50 · 358 阅读 · 0 评论 -
leetcode-977. 有序数组的平方
双指针法题目详情给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例1:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]示例2:输入:nums = [-7,-3,2,3,11]输出:[4,9,9,49,121]暴力解法:class Solution {public: v原创 2022-04-11 11:29:18 · 164 阅读 · 0 评论 -
leetcode-75.颜色分类
题目详情给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。必须在不使用库的sort函数的情况下解决这个问题。示例1:输入:nums = [2,0,2,1,1,0]输出:[0,0,1,1,2,2]示例2:输入:nums = [2,0,1]输出:[0,1,2]我的方法:利用三个指针来进行一次遍历排序,一个头用来存0,一个尾用来存2,一.原创 2022-04-05 17:16:22 · 620 阅读 · 0 评论 -
leetcode-347. 前K个高频元素
桶排序题目详情给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。示例1:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]示例2:输入: nums = [1], k = 1输出: [1]我的方法:1.桶排序顾名思义,桶排序的意思是为每个值设立一个桶,桶内记录这个值出现的次数(或其它属性),然后对桶进行排序。代码:class Solution {public: ve原创 2022-04-04 10:56:24 · 959 阅读 · 0 评论 -
leetcode-215. 数组中的第K个最大元素
快速选择题目详情给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4我的方法:1.快速选择快速选择一般用于求解 k-th Element 问题,可以在 O(n) 时间复杂度,O(1) 空间复杂度完成求解工作。快速选择的实现和快速原创 2022-04-04 10:20:45 · 736 阅读 · 0 评论