排序
排序
Carson_S
这个作者很懒,什么都没留下…
展开
-
【75. 颜色分类】
题目: 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 示例 1: 输入:nums = [2,0,2,1,1,0] 输出:[0,0,1,1,2,2] 示例 2: 输入:nums = [2,0,1] 输出:[0,1,2] 示例 3: 输入:nums = [0] 输出:[0] 示例 4: 输入:nums = [1] 输出:[1] 提示: n == num原创 2021-12-03 21:53:25 · 80 阅读 · 0 评论 -
【451. 根据字符出现频率排序】
题目: 给定一个字符串,请将字符串里的字符按照出现的频率降序排列。 示例 1: 输入: "tree" 输出: "eert" 解释: 'e'出现两次,'r'和't'都只出现一次。 因此'e'必须出现在'r'和't'之前。此外,"eetr"也是一个有效的答案。 示例 2: 输入: "cccaaa" 输出: "cccaaa" 解释: 'c'和'a'都出现三次。此外,"aaaccc"也是有效的答案。 注意"cacaca"是不正确的,因为相同的字母必须放在一起。 示例 3: 输入: "Aabb" 输出:原创 2021-12-03 21:14:33 · 122 阅读 · 0 评论 -
【347. 前 K 个高频元素】
题目: 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 方法一:计数排序 HashMap统计出数组中各元素出现的次数 建立一个新的数组 s[i],用于存储出现了 i 次的元素有多少个 从后往前遍历 s[i] 数组,当元素个数累加到 k 个时停止 此时再根据停下时对应的次原创 2021-12-03 15:12:02 · 133 阅读 · 0 评论 -
【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.快排:选择一个点x,将数组分为左边大于x,右边小于x 2.判断第k个最大的元素位于哪个区间内 3.递归排序第k个最大元素所在区间 class Solution原创 2021-12-02 15:03:21 · 119 阅读 · 0 评论