简单排序总结:选择、插入、交换
来源:互联网 发布:java注解value值不合法 编辑:程序博客网 时间:2024/05/01 21:23
最近,开始对数据结构和算法的复习,这是自己以前学习的弱点,现在想来当时自己就应该心无旁鹜的好好学的,但是,当时有些急功近利,只好现在抓紧时间了。(这些基本的排序方法,在实际中由于效率问题,可能很少使用,我们之所以要学习这些方法,权当扩展知识面,锻炼思维~_~)1、选择排序选择排序:基本思想是对列表或者列表的一部分进行多次扫描,每次选出一个元素将放到正确位置。过程就是:数组元素为n个,从a[0]开始,在a[1]a[n-1]中每一个都与a[0]比较,选出最小的那个,然后在存放到a[0]位置, 然后再从a[1]开始,再是a[2]...这样重复n-1次。
对于线性链表:假设链表数组Node* a[5],节点为Node,数据为整形int。
2、交换排序交换排序:系统的交换那些不符合次序的“元素对”,直到列表中不存在这种元素为止;典型的例子,冒泡排序。冒泡排序:n个元素的序列,从左到右的比较两个连续的元素,如果左边的''右边的则进行交换,重复该过程n-1次,第i次要进行n-1-i次比较。
3、插入排序插入排序:基本思想是,反复地插入新元素到已经排好序的列表之中,且令插入后的列表也是有序的。
总之,不存在最佳的通用排序算法。对于短列表,线性插入排序的性能比较好一点;对于一般的列表,快速排序、希尔排序和堆排序是比较好的选择;如果,序列是基本有序的,我们可以采用冒泡排序。
- 简单排序总结:选择、插入、交换
- 简单排序(冒泡,选择,交换,插入)
- 简单排序(冒泡、选择、插入)总结
- 【排序总结--冒泡、选择、交换】
- 归并排序,堆排序,基数排序,希尔排序,快速排序,交换排序,选择排序和插入排序的总结和比较
- 简单的排序算法——插入排序,选择排序,交换排序(冒泡排序,快速排序)
- 选择排序,冒泡排序,插入排序,交换排序,shell排序
- 排序:插入排序/选择排序/交换排序(冒泡法)
- 插入排序、交换排序、选择排序、归并排序、基数排序
- 插入排序/选择排序/交换排序/归并排序/基数排序
- C++排序方法:插入排序、交换排序、选择排序
- 插入排序、选择排序、交换排序和归并排序
- 几种内部排序算法总结!(冒泡排序、快速排序、直接插入排序、拆半插入排序、简单选择排序)
- 几种内部排序算法总结!(冒泡排序、快速排序、直接插入排序、拆半插入排序、简单选择排序)
- 简单排序--选择、冒泡、插入
- 冒泡,简单选择,插入排序
- 冒泡、选择、插入简单排序
- 【冒泡排序、选择排序、插入排序总结】
- CSS常用命名
- vc线程
- 纠结,纳闷
- 开博启示[图文并茂]
- volatile关键字说明
- 简单排序总结:选择、插入、交换
- 模板回调模式
- 关于静态图像生成句子描述的问题
- CWinThread的使用方法
- 如何区分分布式/集群/并行文件系统?
- SDL_app:emulator.exe应用程序错误
- CWinThread的使用方法
- 老妈的告诫、
- 什么时候该使用多线程