文档查询 | 命令 | 操作 | | : : | : : | | | 查询符条件的数据 | | | 查询并计数 | | | 限制查询条数 | | | 跳过查询 | | | 查询并排序 | | | 查询并优化输出结果 | Read 查看所有 输入it查看更多数据 指定字段 条件查询 大小 | 操作符 ...
分类:
数据库 时间:
2018-02-17 10:30:24
阅读次数:
216
图解排序算法(一)之3种简单排序(选择,冒泡,直接插入) 图解排序算法(二)之希尔排序 图解排序算法(三)之堆排序 图解排序算法(四)之归并排序 图解排序算法(五)之快速排序——三数取中法 ...
分类:
编程语言 时间:
2018-02-16 11:14:23
阅读次数:
223
春晚好看吗?不存在的!!! 在Java数据结构和算法(三)——冒泡、选择、插入排序算法中我们介绍了三种简单的排序算法,它们的时间复杂度大O表示法都是O(N2),如果数据量少,我们还能忍受,但是数据量大,那么这三种简单的排序所需要的时间则是我们所不能接受的。接着我们在讲解递归 的时候,介绍了归并排序, ...
分类:
编程语言 时间:
2018-02-15 23:20:39
阅读次数:
432
1. 从网上找到一张归并排序的图解,如下: 可以看出,归并排序主要运用分治的思想,将要排序的数组由大化小,分别排序后再进行合并。时间复杂度是 O(nlogn)。 2. 归并排序的特点: 优点:稳定 缺点:需要线性的额外空间 3. JAVA代码如下: public class GB { //将两个有序 ...
分类:
编程语言 时间:
2018-02-15 11:54:05
阅读次数:
151
- 题目大意 给出长度为n的序列,每次只能交换相邻的两个元素,问至少要交换几次才使得该序列为递增序列。 - 解题思路 利用归并排序来求逆序数(特别注意数组的大小,太大的话再开个数组分开装)。 - 代码 ...
分类:
其他好文 时间:
2018-02-14 21:32:09
阅读次数:
210
- 题目大意 给出一串数字,问能是它为顺序排列的最小交换数字方式。 - 解答思路 利用归并排序来求逆序数(注意数组的大小就行了)。 - 代码 ...
分类:
其他好文 时间:
2018-02-14 21:31:11
阅读次数:
167
题目描述:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 题目链接:合并两个排序的链表 思路:类似于2路归并排序的合并操作,先取两个链表首结点值小者作为新链表的首结点,然后遍历两个链表,取小者作为其后继结点,直到至少有一个链表为空,最后把至多一个非空链表 ...
分类:
编程语言 时间:
2018-02-14 18:19:08
阅读次数:
208
题目链接:https://vjudge.net/problem/POJ-2299 题目大意: 求数列中逆序对的个数。 知识点: 归并排序 解题思路: 对于数列中的每一个逆序对,它们之间早晚都需要一次邻位变换,因此答案即为数列中逆序对的个数。 我们用归并排序求逆序对个数:对于左右两个已经排好序的子区间 ...
分类:
其他好文 时间:
2018-02-14 13:53:06
阅读次数:
189
要求时间复杂度O(nlogn),空间复杂度O(1),采用归并排序 传统的归并排序空间复杂度是O(n),原因是要用一个数组表示合并后的数组,但是这里用链表表示有序链表合并后的链表,由于链表空间复杂度是O(1),所以可以。 链表问题经常出现TLE问题或者MLE问题,这时候要检查链表拼接过程或者循环过程, ...
分类:
编程语言 时间:
2018-02-12 22:24:06
阅读次数:
201
递归地将数组不断分为两个子数组,然后对子数组排序后进行合并 ...
分类:
编程语言 时间:
2018-02-12 21:03:07
阅读次数:
160