博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构教程--李春葆版(总结)之排序-插入排序
阅读量:2382 次
发布时间:2019-05-10

本文共 741 字,大约阅读时间需要 2 分钟。

本文的主要内容来自数据结构教程--李春葆版,由“你是木头人”博主进行总结。

插入排序

性质:每次将一个待排序的元素,按其关键字大小插入到已经排好序的子表中的适当位置,直到全部元素插入完成为止。

直接插入排序

//直接插入排序-稳定typedef struct{int key;}RecType;void InsertSort(RecType R[],int n){int i,j;RecType tmp;    for(i=1;i
=0&&tmp.key

直接插入排序的图解:

 

折半插入排序

//折半插入排序typedef struct{int key;}RecType;void InsertSort(RecType R[],int n){    int i,j,low,high,mid;    RecType tmp;         for(i=1;i
=high+1;j--)                            R[j+1]=R[j];                   R[high+1]=tmp;         }}

折半插入排序的图解:

 

希尔排序

 

//希尔排序-不稳定typedef struct{int key;}RecType;void ShellSort(RecType R[],int n){         int i,j,gap;         RecType tmp;         gap=n/2;         while(gap>0)         {                   for(i=gap;i
=0&&tmp.key

希尔排序的图解:

转载地址:http://swwab.baihongyu.com/

你可能感兴趣的文章
Flex HTTPService如何给后台传递参数
查看>>
Flex取得客户端的IP地址
查看>>
不vista下安装oracle10g(r2)注意事项
查看>>
文件列表输出到文件
查看>>
Ubuntu(804) SSH远程管理服务器安装配置
查看>>
android源码
查看>>
使用Hadoop的JAVA API远程访问HDFS
查看>>
Linux下任务调度服务crond使用
查看>>
ZeroMQ的订阅发布(publish-subscribe)模式
查看>>
使用redis存储全球IP库
查看>>
Snappy Java API简介
查看>>
C/C++中正则表达式库RE2的使用
查看>>
HBase Java API(1.2.X)使用简介
查看>>
Java:实现比较接口时,应该全面的进行各种情况的比较
查看>>
python3.*下用mob_pbxproj自动化修改配置
查看>>
使用fir打包,测试跳转安装的坑
查看>>
版本号大小判断,适用规则(X.X.X.X........)
查看>>
关于Objective-C方法签名规则的说明
查看>>
libxml2.dylb 添加后找不到<libxml/tree.h> 头文件
查看>>
关于 [[self class] alloc]的理解
查看>>