社区
数据结构与算法
帖子详情
在对一组记录(60,43,100,30,21,79,65,21,90)进行直接插入排序时
wangzeba
2002-01-24 01:09:33
在对一组记录(60,43,100,30,21,79,65,21,90)进行直接插入排序时,当把它的第七个记录65插入到有序表时,为寻找插入位置需比较多少次?
(请说明解题方法,Thanks!!)
...全文
429
1
打赏
收藏
在对一组记录(60,43,100,30,21,79,65,21,90)进行直接插入排序时
在对一组记录(60,43,100,30,21,79,65,21,90)进行直接插入排序时,当把它的第七个记录65插入到有序表时,为寻找插入位置需比较多少次? (请说明解题方法,Thanks!!)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hwei75
2002-01-24
打赏
举报
回复
1
比较了3次分别与100,79,60比较,应为65〈 60 不成立,所以退出循环。源码如下:
void DirectInsert(int * pData,int n) //pData存放需要排序的数,n指明pData中数的个数
{
int Temp; //临时变量,存放当前需插入的数的副本
for(int i = 1;i<n;i++)
{
int j = i-1;
Temp = pData[i];
for(;j>=0 &&Temp<pData[j];j--) //比较
pData[j+1]=pData[j]; //移动
pData[j+1] = Temp; //插入
}
}
void main()
{
int Data[] = {60,43,100,30,21,79,65,21,90};
DirectInsert(Data,sizeof(Data)/sizeof(int));
}
MoreWindows白话经典算法之七大排序第2版(高清)
在第一版的基础上新加了对冒泡排序,
直接插入排序
,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法的总结篇,方便大家复习,合适作为笔试面试前的复习资料。
MoreWindows白话经典算法之七大排序(高清版)
这是本人在研一上课
时
所整理的文档,包括冒泡排序,
直接插入排序
,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法,这些文章不仅使我在考试中取了不错的成绩,也为后来顺利面过迅雷,腾讯,微软打下了良好的基础,现在整理成电子书形式,希望能对大家有所帮助。
排序——插入排序(
直接插入排序
、希尔排序、折半插入排序)
排序这个文章我本来想写一篇的,但是想了想太长了,最后我还是决定拆开来写吧。第一部分主要是讲插入排序的,包括
直接插入排序
和希尔排序。
直接插入排序
基本思想: 依次将待排序序列中的每一个
记录
插入到一个已排好序的序列中,直到全部
记录
都排好序。 解读: 可以想一下打扑克的
时
候,每抓到一张牌就会插入到你手中已经按顺序理好的牌中。 排序过程: (1)将整个待排序的
记录
划分为有序区和无序区,初始
时
有序区为待...
73-插入排序——
直接插入排序
1. 插入排序 插入排序的基本思想:每次将一个待排序的
记录
,按其关键字大小插入到前面已经排好序的子表中的适当位置,直到全部
记录
插入完成为止。 2.
直接插入排序
假设待排序的
记录
存放在数组R[0 .. n-1]中,排序过程的某一中间
时
刻,R被划分成两个子区间R[0 … i-1]和R[i … n-1],其中已排好序的有序区,当前未排序的部分称其为无序区。 图1-
直接插入排序
...
【算法排序】
直接插入排序
详解与实现
插入排序(InsertionSort),一般也被称为
直接插入排序
。对于少量元素的排序,它是一个有效的算法。插入排序是一种最简单的排序方法,它的基本思想是将一个
记录
插入到已经排好序的有序表中,从而一个新的、
记录
数增 1 的有序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表
进行
待插入位置查找,并
进行
移动。
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章