二路归并排序主要运用了“分治算法”,分治算法就是将一个大的问题划分为n个规模较小而结构相似的子问题。这些子问题解决的方法都是类似的,解决掉这些小的问题之后,归并子问题的结果,就得到了“大”问题的解。 二路归并排序主旨是“分解”与“归并” 分解: 1.将一个数组分成两个数组,分别对两...
分类:
编程语言 时间:
2014-11-16 23:03:55
阅读次数:
2377
import sysdef merge(nums,first,middle,last): lnums = nums[first:middle+1] rnums = nums[middle+1:last+1] lnums.append(sys.maxint) rnums.append(sys.maxi...
分类:
编程语言 时间:
2014-11-16 21:31:54
阅读次数:
199
现在已经把常见的9种内部排序算法都用C语言实现了,为了方便自己和大家查看,就弄了这么一个类似于导航目录的东西。
一、冒泡排序
冒泡排序(C语言版)
二、选择排序
选择排序(C语言版)
三、直接插入排序
直接插入排序(C语言版)
四、希尔排序
希尔排序(C语言版)
五、归并排序
归并排序(C语言版)
六、基数...
分类:
编程语言 时间:
2014-11-16 14:44:16
阅读次数:
211
一、实验目的:比较至少4种排序算法的执行效率。已学过的算法:起泡排序、选择排序、插入排序、shell排序,归并排序、快速排序等。二、实验要求:1、从中选择至少4中排序算法,写成独立的函数进行调用。2、参与排序的数据不少于5000个,要求用数据文件存储随机产生的数据。3、要求在main()函数中调用以...
分类:
编程语言 时间:
2014-11-15 21:46:55
阅读次数:
358
设有两个无头结点的单链表,头指针分别为ha,hb,链中有数据域data,链域next,两链表的数据都按递增序存放,现要求将hb表归到ha表中,且归并后ha仍递增序,归并中ha表中已有的数据若hb中也有,则hb中的数据不归并到ha中,hb的链表在算法中不允许破坏。
#include /// no have dead node ha and hb >>ha
#include
typedef...
分类:
其他好文 时间:
2014-11-14 00:14:05
阅读次数:
375
概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据非常大,一次不能容纳所有的排序记录,在排序过程中须要訪问外存。我们这里说说八大排序就是内部排序。 当n较大,则应採用时间复杂度为O(nlog2n)的排序方法:高速排序、堆排序或归并排序序。 高速排序:是眼下基于...
分类:
编程语言 时间:
2014-11-13 18:13:04
阅读次数:
269
1?概述 本文对比较常用且比较高效的排序算法进行了总结和解析,并贴出了比较精简的实现代码,包括选择排序、插入排序、归并排序、希尔排序、快速排序等。算法性能比较如下图所示: 2?选择排序 选择排序的第一趟...
分类:
编程语言 时间:
2014-11-13 11:02:39
阅读次数:
340
数据结构实验之链表四:有序链表的归并Time Limit: 1000MS Memory limit: 65536K题目描述分别输入两个有序的整数序列(分别包含M和N个数据),建立两个有序的单链表,将这两个有序单链表合并成为一个大的有序单链表,并依次输出合并后的单链表数据。输入第一行输入M与N的值; ...
分类:
其他好文 时间:
2014-11-13 08:18:14
阅读次数:
242
K-th Number
Time Limit: 20000MS
Memory Limit: 65536K
Total Submissions: 38379
Accepted: 12480
Case Time Limit: 2000MS
Description
You are working for Macrohar...
分类:
其他好文 时间:
2014-11-12 17:55:09
阅读次数:
237
Kth number
Time Limit: 15000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5425 Accepted Submission(s): 1760
Problem Description
Give you a seq...
分类:
其他好文 时间:
2014-11-12 17:51:37
阅读次数:
200