插入排序算法的分析与比较科技论文
目录
2算法的基本思想
2. 1直接插入排序
2. 2二分法插入排序
2. 3希尔排序
3结果分析
30 29 28 27 26 25 24 23 22 21 20 19 18 171 16 15 14
13 1211 10 9 8 7 6 54 3 21
正文
摘要排序算法作为计算机程序设计、数据库及操作系统等课程的重要基础广泛应用于各种领域。该文介绍了直接插入排序、二分法插入、希尔排序的基本思想实现代码并针对不同数据进行比较
关键字直接插入;二分法插入;希尔排序
中图分类号 TP312文献标识码 A
文章编号 1009-3044 2020 01-0289-02
1概述
排序是将一个数据元素的任意序列重新排列成一个按关键词有序的序列。根据排序过程中依据不同的原则将排序算法分为插入排序、交换排序、选择排序、归并排序和计数排序五类。在不同环境下每种算法都有各自的优缺点。我们从算法实现不同数据进行运算比较说明不同算法的优缺点。
2算法的基本思想
2. 1直接插入排序
直接插入排序是一种最简单的排序方法它的基本思想是将一个记录插入到已经排好序的有序表中从而一个新的、记录数增1的有序表。在其实现过程使用双层循环外层循环对除了第一个元素之外的所有元素 内层循环对当前元素前面有序表进行待插入位置查找并进行移动其代码实现如下
2.2二分法插入排序
与直接插入排序相比较基本思想是一致的区别在于在查找待插入位置时不再是从前往后或者从后往前依次相比较而是和前面的有序表中间位置的元素相比较如果待插入元素大则直接和有序表的后半部分再次进行比较否则缩至有序表的前半部分。其代码如下
2.3希尔排序
希尔排序又称为“缩小增量排序” 将待排序记录按增量分成不同小组在组内进行直接插入排序。其代码如下
3结果分析
原始数据为 80 33 25 4 13 92 68 75 30 38 46 42 1526 8 23
37 98 83 72 65 3 18 22 34 44 55 85 70 60
原始数据为 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1819
20 21 22 23 24 25 26 27 28 29 30
原始数据为
30 29 28 27 26 25 24 23 22 21 20 19 18 171 16 15 14 13
1211 10 9 8 7 6 54 3 21
4結论
对于无序数据希尔排序算法的移动次数明显小于其他直接插入排序算法比较次数最多希尔排序算法的运行时间比其他算法均长;对于递增数据希尔排序算法的比较次数和移动次数都小于其他算法二分法算法的比较次数最多;对于递减数据直接插入算法比较最多二分法插入算法比较次数最少希尔算法的移动次数最少。
易探云香港vps主机价格多少钱?香港vps主机租用费用大体上是由配置决定的,我们选择香港vps主机租用最大的优势是免备案vps。但是,每家服务商的机房、配置、定价也不同。我们以最基础配置为标准,综合比对各大香港vps主机供应商的价格,即可选到高性能、价格适中的香港vps主机。通常1核CPU、1G内存、2Mbps独享带宽,价格在30元-120元/月。不过,易探云香港vps主机推出四个机房的优惠活动,...
Dataideas是一家2019年成立的国外VPS主机商,提供基于KVM架构的VPS主机,数据中心在美国得克萨斯州休斯敦,主机分为三个系列:AMD Ryzen系列、Intel Xeon系列、大硬盘系列,同时每个系列又分为共享CPU和独立CPU系列,最低每月1.5美元起。不过需要注意,这家没有主页,你直接访问根域名是空白页的,还好他们的所有套餐支持月付,相对风险较低。下面以Intel Xeon系列共...
LetBox此次促销依然是AMD Ryzen处理器+NVME硬盘+HDD大硬盘,以前是5TB月流量,现在免费升级到10TB月流量。另外还有返余额的活动,如果月付,月付多少返多少;如果季付或者半年付,返25%;如果年付,返10%。依然全部KVM虚拟化,可自定义ISO系统。需要大硬盘vps、大流量vps、便宜AMD VPS的朋友不要错过了。不过LetBox对帐号审核严格,最好注册邮箱和paypal帐号...