几种内部排序算法
来源:互联网 发布:java websocket client 编辑:程序博客网 时间:2024/06/06 16:56
通常说的排序指:
①.内部排序算法(数据在内存中进行排序)
②.外部排序算法(数据大,需要访问外存)
我们把排序进行了划分,并计算出排序的时间复杂度,稳定性;下来逐个对排序算法实现,并归纳出排序的实现过程和思想。
插入类排序
插入类排序的思想:在一个已经排好序的有序序列内,对待排序的无序序列区中记录逐个进行处理,每一步将一个待排序的记录与同组那些已经排好序的记录进行比较,然后有序的插到该有序序列区中,直到将所有待排记录全部插入为止。(类似于打扑克牌)
直接插入排序
#include<stdio.h> int insertsort(int *L);int main(void){ int i; int L[10] = {2,99,88,54,23,76,34,13,4,5}; insertsort(L); for(i = 0;i < 10;i++) printf("%d ",L[i]); return 0;}int insertsort(int *L){ int i,j; int K; //用于保存待插入的数据 for(i = 1;i < 10;i++){ // 10个数据比较9次就行了 K = L[i]; //将待插入数据备份到 K 中 for(j = i-1;L[j] > K;j--) //从后往前比较 L[j+1] = L[j]; //把大于 K 的都向后移一个位置 L[j+1] = K; //将 K 放到正确位置 } return *L;}
可将待排序的数组分为两部分
[已排序区][待排序区]
[2][99,88,54,23,76,34,13,4,5]
然后依次在待排序区取出一个数据,与排序区比较,比待排数据大的,依次往后移一位,否则,这个位置就是要插入数据的位置。
0 0
- 几种内部排序算法
- 几种内部排序算法
- 几种内部排序算法的比较
- 几种内部排序算法分析
- 几大内部排序算法
- 几大内部排序算法(二)
- 几种内部排序算法总结!(冒泡排序、快速排序、直接插入排序、拆半插入排序、简单选择排序)
- 几种内部排序算法总结!(冒泡排序、快速排序、直接插入排序、拆半插入排序、简单选择排序)
- 十种内部排序算法
- 几种常见的内部排序方法
- 几种常见内部排序算法分析与实现(C语言描述)
- 几种排序算法
- 几种排序算法!
- 几种排序算法
- 几种排序算法
- 几种排序算法
- 几种排序算法
- 几种排序算法
- swustoj蛇形填数(1183)
- HTPPS请求 证书 解决方案
- 计算机文化学习笔记2
- MySQL 视图
- Manacher算法
- 几种内部排序算法
- EGL接口介绍
- css3边框外部阴影
- Linux的常用知识
- 数据结构系列(7)排序
- 常用meta整理
- backend.log文件一直变大的问题
- 题目1450:产生冠军
- 多线程下的单例