![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序
该专栏主要是一些关于排序的题解
jump_into_zehe
这个作者很懒,什么都没留下…
展开
-
对角线遍历--排序
LeetCode对角线遍历给你一个列表 nums ,里面每一个元素都是一个整数列表。请你依照下面各图的规则,按顺序返回 nums 中对角线上的整数。示例1:输入:nums = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,4,2,7,5,3,8,6,9]示例2:输入:nums = [[1,2,3,4,5],[6,7],[8],[9,10,11],[12,13,14,15,16]]输出:[1,6,2,8,7,3,9,4,12,10,5,13,11,14,15,16]解原创 2020-07-29 14:36:52 · 346 阅读 · 0 评论 -
收藏清单--排序
LeetCode收藏清单给你一个数组 favoriteCompanies ,其中 favoriteCompanies[i] 是第 i 名用户收藏的公司清单(下标从 0 开始)。请找出不是其他任何人收藏的公司清单的子集的收藏清单,并返回该清单下标。下标需要按升序排列。示例 1:输入:favoriteCompanies = [["leetcode","google","facebook"],["google","microsoft"],["google","facebook"],["google"],原创 2020-07-28 23:44:59 · 163 阅读 · 0 评论 -
不同整数的最少数目--排序
LeetCode不同整数的最少数目给你一个整数数组 arr 和一个整数 k 。现需要从数组中恰好移除 k 个元素,请找出移除后数组中不同整数的最少数目。示例 1:输入:arr = [5,5,4], k = 1输出:1解释:移除 1 个 4 ,数组中只剩下 5 一种整数。示例 2:输入:arr = [4,3,1,1,3,3,2], k = 3输出:2解释:先移除 4、2 ,然后再移除两个 1 中的任意 1 个或者三个 3 中的任意 1 个,最后剩下 1 和 3 两种整数。1 <原创 2020-07-28 21:18:41 · 151 阅读 · 0 评论 -
交换和--排序
LeetCode面试题 16.21.交换和给定两个整数数组,请交换一对数值(每个数组中取一个数值),使得两个数组所有元素的和相等。返回一个数组,第一个元素是第一个数组中要交换的元素,第二个元素是第二个数组中要交换的元素。若有多个答案,返回任意一个均可。若无满足条件的数值,返回空数组。示例:输入: array1 = [4, 1, 2, 1, 1, 2], array2 = [3, 6, 3, 3]输出: [1, 3]示例:输入: array1 = [1, 2, 3], array2 = [4原创 2020-07-28 18:27:48 · 116 阅读 · 0 评论 -
排序链表--归并排序
LeetCode排序链表在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5解法:归并排序解题思路:思路很简单,就是实现链表的归并排序,我们先了解一下归并排序是怎么工作的arr = [1,5,4,2]归并排序的思想就是分治,也原创 2020-07-28 16:49:06 · 146 阅读 · 0 评论 -
根据数字二进制下1的数目排序
LeetCode根据数字二进制下1的数目排序给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。如果存在多个数字二进制中 1 的数目相同,则必须将它们按照数值大小升序排列。请你返回排序后的数组。示例 1:输入:arr = [0,1,2,3,4,5,6,7,8]输出:[0,1,2,4,8,3,5,6,7]解释:[0] 是唯一一个有 0 个 1 的数。[1,2,4,8] 都有 1 个 1 。[3,5,6] 有 2原创 2020-07-28 15:17:03 · 471 阅读 · 0 评论 -
重构字符串--排序算法
LeetCode重构字符串示例 1:输入: S = "aab"输出: "aba"示例 2:输入: S = "aaab"输出: ""解法:奇偶位填入解题思路:要使字符串的所有相邻的字符都不相等,我们可以将先将每一个字符在字符串中出现的次数找出来,用一个长度为26的数组就可以了for(char c : S.toCharArray()){ if(max_length < ++arr[c-'a']) max_length = arr[c-'a'];}原创 2020-07-25 23:25:00 · 171 阅读 · 0 评论