附有本人超级详细解释(看不懂的面壁十天!) 一、 实际问题: 希尔排序(Shell Sort)是插入排序的一种。因D.L.Shell于1959年提出而得名。它又称“缩小增量分类法”,在时间效率上比插入、比较、冒泡等排序算法有了较大改进。能对无序序列按一定规律进行排序。 二、数学模型: 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录放在同一个组中。先在各组内进行直接插人排序;然后,取第二个增量d2<d1重复上述的分组和排序,直至所取的增量dt=1(dt<dt-l<…<d2<d1),即所有记录放在同一组中进行直接插入排序为止。该方法实质上是一种分组插入方法。 三、算法设计: 1、将相隔某个增量dlta[k]的元素构成一个子序列。在排序过程中,逐次减小这个增量,最后当h减到1时,进行一次插入排序,排序就完成。增量序列一般采用:dlta[k]=2t-k+1-1,其中t为排序趟数,1≤k≤t≤[log2 (n+1)],其中n为待排序序列的长度。按增量序列dlta[0..t-1]。 2、按增量dlta[k](1≤k≤t≤[log2 (n+1)])进行一趟希尔插入排序。 3、在主函数中控制程序执行流程。 4、时间复杂度:1≤k≤t≤[log2 (n+1)]时为O(n3/2)。
上传时间: 2013-12-11
上传用户:天涯
这是一个电流电压表程序,程序具有报警和RS485通讯功能,可以随意设置最大显示量程为9999的数。
上传时间: 2015-06-01
上传用户:TRIFCT
关于F2812中用C语言来实现中断的说明: 1.首先在.cmd中定位系统中断表:
上传时间: 2015-06-01
上传用户:脚趾头
生成学生学籍管理系统的表单,希望对大家有帮助,
上传时间: 2013-12-17
上传用户:417313137
哈司机哈萨阿嫂计算 阿苏军看到哈萨阿 阿苏进口货打击哈司机哈萨克拉
标签: 计算
上传时间: 2015-06-02
上传用户:refent
1.分别利用计算法和查表法产生1000Hz的余弦波信号,并使用示波器观测产生信号的频率和幅度。 2.利用计算法产生其他非正弦类周期信号波形,如周期矩形波、三角波、锯齿波等。
上传时间: 2014-01-09
上传用户:李梦晗
基于C语言的数据结构算法,双向链表定义函数.
上传时间: 2015-06-02
上传用户:xuan‘nian
用双向链表寻找迷宫路径,可以自己记住路径并实时删除舍弃路径
上传时间: 2015-06-02
上传用户:caozhizhi
程序建立一个可存放128项的电话号码表,每项包括人名(20个字符)及电话号码(15个字符)两部分; 程序可接收输入人名及相应的电话号码,并把它们加入电话号码表中; 程序可接收需要查找电话号码的人名,并从电话号码表中查出其电话号码,再在屏幕上打印出来。
上传时间: 2013-12-13
上传用户:TRIFCT
学校管理系统,本管理系统与一般管理系统的区别就是:一般管理系统的后台数据库是用Access或sql server进行前台界面设计软件与后台数据库中的数据表的数据相连接。而此管理系统是用Delphi 6.0自身所带的SQL explorer及interbase进行前台与后台的数据链接,interbase 在使用之前必须先设置用户名和密码,用户名为sysdba,缺省密码为masterkey,方便实用,而且在整个过程中贯穿着很严格的面向对象的编程技术和完整正确的数据库构思方法,较之面向过程的编程技术更为科学,使管理系统逐步系统化、有序化。
上传时间: 2014-01-11
上传用户:hakim