【算法】排序——直接排序
admin
2024-03-16 10:58:02
0

内部排序的全部过程都是在内存中进行的。按排序策略的不同可以将内部排序划分为直接插入排序、冒泡排序、简单选择排序、希尔排序、快速排序、堆排序、归并排序、基数排序等。其中前三种排序方法属于简单的排序方法,其特点是排序过程直观、易于理解和实现,都属于稳定的排序方法,但效率较低;其他几种方法则称为先进的排序方法,算法原理相对复杂,不稳定,但效率较高。

直接插入排序

(1)直接插入排序的基本思想是把新的未排序的元素逐个插入已排序的有序表种。直接插入排序算法可以借助减治法的减一技术进行设计。

(2)假设待排序序列中有k个元素(1<=k<=N-2)已经按照关键字值递增顺序排列,将一个未排序的元素list[i](1<=i<=N-1)直接插入适当的位置。整个排序过程进行N-1趟插入,即首先从右向左顺序搜索表中已排序的序列,直到找到一个元素list[j-1](1<=j-1<=k-1)的关键字值比list[i]的关键字值小;将已排序序列中比list[i]的关键字值大的元素list[j],list[i+1],……,list[k]依次在线性表中后移一个位置;将元素list[i]插入表中的j的位置上成为元素list[j]。 

(3)直接插入排序算法

void insertSort(int list[],int n){
    int i,j;
    for(i=2;i<=n;i++){
        list[0]=list[i];
        j=i-1;
        while(j>0&&list[0]
            list[j+1]=list[j];
            --j;
        }
        list[j+1]=list[0];
    }
}  

(4)完整程序 

#include
#define N 20
int list[N+1];
void insertSort(int list[],int n){
    int i,j;
    for(i=2;i<=n;i++){
        list[0]=list[i];
        j=i-1;
        while(j>0&&list[0]
            list[j+1]=list[j];
            j--;
        }
        list[j+1]=list[0];
    }
}
int main(){
    int i,n;
    scanf("%d",&n);
    for(i=1;i<=n;i++){
        scanf("%d",&list[i]);
    }
    insertSort(list,n);
    for(i=1;i<=n;i++){
        printf("%d ",list[i]);
    } 
    return 0;

相关内容

热门资讯

原生家庭对人的影响很大,如何摆... 原生家庭对人的影响很大,如何摆脱原生家庭所造成的性格缺陷?在学校里好好学习,尽量不要被原生家庭的坏习...
你知道哪些珍惜时间的名人故事吗... 你知道哪些珍惜时间的名人故事吗?1、悬梁刺股东汉时候,有个人名叫孙敬,是著名的政治家。他年轻时勤奋好...
有一首歌,歌词里铿锵玫瑰,作何... 有一首歌,歌词里铿锵玫瑰,作何解释?铿 锵 玫 瑰"铿锵"意味着声音宏亮,节奏分明;"玫瑰"代表着美...
“我越爱越深越迷茫,你怎么舍得... “我越爱越深越迷茫,你怎么舍得我心伤,说好一辈子不忘”是什么歌?您好啊!这是一首经典的歌曲---《模...
谁有我们小学时候的课文《八角楼... 谁有我们小学时候的课文《八角楼上的灯光》?《八角楼上的灯光》 回忆起来 上那课的时候宁...
读《从百草园到三味书屋》,谈…... 读《从百草园到三味书屋》,谈……三味书屋的读书生活哪些地方应该改革?至少三方面!教学思想,教学方法,...
腾格里沙漠、巴丹吉林沙漠、库布... 腾格里沙漠、巴丹吉林沙漠、库布齐沙漠哪个更好玩更美?巴丹吉林沙漠腾格里沙漠、巴丹吉林林沙漠、库布齐沙...
AI能回到76人吗 AI能回到76人吗希望AI能回到梦开始的地方 拿下冠军不能 他可能去一只有夺冠实力的球队
她说民谣太穷, 一听就是一根烟... 她说民谣太穷, 一听就是一根烟, 一听就是三瓶酒, 而我只有一根烟了, 还要撑一夜。是什么意思 故...
老井蛙的遗言来自哪则寓言故事 老井蛙的遗言来自哪则寓言故事老井蛙的遗言 在病榻上躺了三个月光景的老井蛙,觉得自己的日子已经不多了,...
《斗罗大陆》中,有哪些震撼人心... 《斗罗大陆》中,有哪些震撼人心的魂技呢?唐三的第五魂技:蓝银霸王枪。一点寒芒先到 随后枪出如龙。在对...
除了《寻梦环游记》,还有这5套... 除了《寻梦环游记》,还有这5套暖心绘本教孩子看待死亡!清明节到了,扫墓、祭祖的同时,死亡这个话题不可...
海南为游客提供热带雨林游玩多元... ■ 海南日报全媒体记者 刘宁玥住进海南热带雨林是怎样的体验?7月6日,住进保亭黎族苗族自治县七仙岭温...
蓝桉已遇释槐鸟是什么意思 梗来... 蓝桉已遇释槐鸟是什么意思 梗来源全诗分享最近“蓝桉遇释槐鸟”在网络社交平台十分流行,很多人都在说这句...
一家三口去张家界五日四晚跟团游... 一家三口去张家界五日四晚跟团游价格,张家界纯玩五日游报团多少钱,看完不踩坑。最近我和家人终于决定出发...
贵州黔西南自驾|营地纳山水,风... 摘自《汽车自驾游》杂志2025年7月刊 分享嘉宾_ 敖美丽(贵州贞丰三岔河国际露营基地 主理人) 贵...
旅居生活的真实感受房车旅行 旅居生活的真实感受房车旅行
结伴去黄山五天四晚旅游费用是多... 黄山,这座屹立于皖南大地的奇峰峻岭,宛如一幅流动的山水画卷,自古以来便吸引着无数文人墨客为之倾倒。它...
小暑节气 游客海南三亚乐享海边... 2025年7月7日小暑节气,傍晚时分,中外游客相聚在海南三亚湾,休闲度假,乐享夏日海边清凉。 十多...
广东英德红茶 英德红茶,简称“英红”,其中的佼佼者又叫做“英红九号”,主要产于中国的红茶之乡——广东省英德市。英德...