问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于排序算法效率的

发布网友 发布时间:2022-04-30 08:35

我来回答

3个回答

热心网友 时间:2022-06-19 21:38

先设一个时间控件,其周期(interval)为1(毫秒);其enabled=false
在时间控件中,设置一个计数器,进行计数,即每毫秒计数一次;
在计算排序的事件中,第一行写上timer1.enabled=true,让计数器进行计数,最后一行再设为false,中间为算法.再把时间控件中的计数数值取出即为本排序法的所用的时间.另一排序法也同此理.然后进行比较就可以了.

热心网友 时间:2022-06-19 21:38

插入排序,选择排序,交换排序(冒泡),数据结构书上有详细的介绍
以下是直接插入排序,选择排序,希尔排序,冒泡排序的算法

/*直接插入排序的基本思想是:顺序地把待排序序
列中的各个记录按其关键字的大小,插入到已排
序的序列的适当位置。
*/

void InsertSort(elemtype x[], int n)
{
int i,j;
elemtype s;

for(i=0;i<n-1;i++)
{
s = x[i+1];
j = i;
while(j>-1 && s.key<x[j].key)
{
x[j+1] = x[j];
j--;
}
x[j+1]=s;
}
}

/*选择排序的基本思想是:不断从待排序的序列中
选取关键字最小的记录放到已排序的记录序列的
后面,知道序列中所有记录都已排序为止。
*/
void SelectSort(elemtype x[], int n)
{
int i,j,Small;
elemtype Temp;

for(i=0;i<n-1;i++)
{
Small = i;
for(j=i+1;j<n;j++)
{
if(x[j].key<x[Small].key)
Small = j;
}

if(Small!=i)
{
Temp = x[i];
x[i] = x[Small];
x[Small] = Temp;
}
}
}

/*希尔排序的基本思想是:不断把待排序的记录分
成若干个小组,对同一组内的记录进行排序,在
分组时,始终保证当前组内的记录个数超过前面
分组排序时组内的记录个数。
*/

void ShellSort(elemtype x[], int n, int d[], int Number)
{
int i, j, k, m, Span;
elemtype s;

for(m=0;m<Number;m++)
{
Span = d[m];
for(k=0;k<Span;k++)
{
for(i=k;i<n-Span;i+=Span)
{
s = x[i+Span];
j = i;
while(j>-1 && s.key<x[j].key)
{
x[j+Span] = x[j];
j-=Span;
}
x[j+Span] = s;
}
}
}
}

/*冒泡排序的基本思想是:将待排序序列中第一个
记录的关键字R1与第二个记录的关键字R2做比较,
如果R1>R2,则交换R1和R2的位置,否则不交换;
然后继续对当前序列中的第二个记录和第三个记
录同样的处理,依此类推。
*/

void BubbleSort(elemtype x[], int n)
{
int i,j,flag=1;
elemtype temp;

for(i=1;i<n && flag==1;i++)
{
flag=0;
for(j=0;j<n-i;j++)
{
if(x[j].key>x[j+1].key)
{
flag=1;
temp=x[j];
x[j]=x[j+1];
x[j+1]=temp;
}
}
}
}

热心网友 时间:2022-06-19 21:39

按最大的算,只是算个理论值如冒泡
for(1..n)
for(1..n)

这就是n二次方,是比较大的
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 微信想发朋友圈出现制作视频,没法发照片是怎么回事 我在微信朋友圈发的视频昨天还能看,为什么今天发现不能看了呢? 编号一个程序完成对整型数组元素的排序(使用冒泡排序和选择排序分别来完成) 利用选择法,描述将10个数按从大到小顺序排列的基本思路与算法流程 几种排序算法效率的比较 梦见在教室好多人在算题,我找书包,找书不见在老师办公室找见威了旧书是什么意? 梦见自己挖出埋在地下大量的旧书? 微信朋友圈不能打开小视频,提示本地文件损坏 微信朋友圈里的视频播放不了是什么原因 用鳝鱼血治疗面瘫有负作用吗? 成都限号几点结束 鳝鱼血粘在白衣上怎样清洗 鳝鱼血怎样保存 黄鳝鱼血怎样取红烧盘鳝鱼做法。红烧盘鳝做官儿? 成都市区机动车限号是早上几点到晚上几点钟? 谁知道黄鳝怎样去骨取肉? 如何善用鳝鱼血做食疗 请问成都限号车晚上几点之后就不限号了? 鳝鱼血有什么功效? 海尔蓝晶滚筒洗衣机烘干中途停止 选择排序法的介绍 朋友圈视频由于格式版权限制这个视频要怎么删除? ...每个排序方法的实现思路是如何的?每个方法的思想是什么?? kettle的插入更新组件非常慢怎么办 Java中冒泡排序和选择排序有什么不同? 陈晓晖、陈晓凌、陈晓鸣有什么背景 陈晓晖的湛庐文化创始人总经理 陈晓晖 非你莫属波士团成员都有谁啊 重庆工商大学老师 求一份到目前为止《非你莫属》上的嘉宾名单???? 麻烦各位朋友们了。 广州皇上皇集团股份有限公司销售配送分公司怎么样? 怎么能拒掉美团众包打包来的其中一单 联想手机开机后一直黑屏而各项功能正常怎么办 嵩县黄金有限公司怎么样? 电脑开机显示lenovo,然后黑屏,一直启动不了 在美团众包上我把外卖撒了然后我点了取消订单只扣10块钱吗 给孩子取名 男孩 姓陈母亲姓张,谢谢 想取消美团众包订单,显示余额不足,取消不了怎么办 富二代到小公司面试,因为学历太高被面试官质疑,是什么电视剧? 2014年农历11月19日出生的陈姓女孩取什么名字最好