随笔分类 - 排序
摘要:``` #include #include #include #include #include #include #include #include #include #include using namespace std; struct ListNode { int value; ListNode* next; ListNode(int value) { this->value = valu
阅读全文
摘要:"题目" 题解:当然可以O(n k)的效率,但是这样很low,我们可以用O(n log(k))的效率去解决。 首先按照暴力的思想,从一个元素x开始,遍历它后面的k 1位元素,判断是否有符合的条件。如果将这个k个数排序的话,就不用遍历啦,只要找到x的位置,然后判断x的前后是否满足条件皆可以了。 但是如
阅读全文
摘要:"题目" 题意:找到一个数组里第K大的数字。 题解:我们当然可以排序好了,之后,选择第K大的数字。但是这样做一点技术含量也没有。 排序算法选用快排。寻找第K大的数字,不必把数组完全排完序之后,再找第K大。快排中是选取一个数字,把大于它的放在右边,小于它的放在左边,在递归的时候,我们判断k 和右边数字
阅读全文
摘要:"题目" 题意:给你一个数组,让你把数组里的元素组合起来,组合成的新数字最大 题解:把数字给排个序,但是排序的标准是啥呢?两个数字孰大孰小呢?判断标准就是两个数字分别前后组合,得出的数字哪个大,则前面的那个数字就大。 一开始我的思路错了,根据数字每个位上的数字判断,这样反而是变得更加复杂了!
阅读全文
摘要:"题目" 题意:比较两个版本的大小 题解:
阅读全文