排序
文章平均质量分 54
joycetlm
这个作者很懒,什么都没留下…
展开
-
Partition
(一) Sort Colors 题目:一个无序数组仅仅含有0,1,2三种元素,要求按照0,1,2的顺序排列; 解答:调用两次快速选择的方法; 代码: class Solution { public void sortColors(int[] nums) { quickSelect(nums, 0); quickSelect(nums, 1);原创 2018-01-21 11:28:43 · 185 阅读 · 0 评论 -
Topological Sorting(拓扑排序必考题)
http://www.lintcode.com/en/problem/topological-sorting/ 题目:将图中节点进行拓扑排序(假设图中至少存在一个拓扑序列) class DirectedGraphNode { int label; ArrayList neighbors;原创 2017-08-10 09:25:13 · 933 阅读 · 0 评论 -
排序链表
(一)Sort List https://leetcode.com/problems/sort-list/description/ 题目:将链表排序,使得时间复杂度为O(nlogn) 解答: 方法一:归并排序:将链表分成左右两等分,对于每个等分进行递归调用,直到每个等分只含有一个节点; 第一次犯错:在拆分左右时,忘记将左链表尾部指向null; 代码: cl...原创 2017-07-31 09:35:26 · 146 阅读 · 0 评论 -
有序数组
(一)merge sorted arrays https://leetcode.com/problems/merge-sorted-array/description/ 题目:将有序数组nums2合并到有序数组nums1中(num1空间足够,m、n分别表示两个数组里初始化的元素个数; 解答:从nums1的第m+n-1个位置开始更新(从最大的开始),如果从最小的开始更新需要不断原创 2018-01-17 23:42:05 · 796 阅读 · 0 评论 -
Quick Sort(快速排序)
Quick Sort : 时间复杂度为O(logn) 思路:参考https://www.cnblogs.com/luomeng/p/10587492.html public void quickSort(int[] nums, int low, int high) { if (low >= high) { return; } ...原创 2018-01-19 14:20:43 · 616 阅读 · 0 评论