所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。排序算法在很多领域得到相当地重视,尤其是在大量数据的处理方面。
排序包括两大类:内部排序和外部排序
内部排序:待排序列完全存放在内存中所进行的排序过程,适合不太大的元素序列,即元素个数少的排序中
外部排序:指的是大文件的排序,即待排序的记录存储在外存储器上,待排序的文件无法一次装入内存,需要在内存和外部存储器之间进行多次数据交换,以达到排序整个文件的目的
直接插入排序
【是什么】:是一种简单的排序方法,基本思想是依次将记录插入到一个已排好序的有序表中,从而得到一个新的、记录数增加1的有序表例子:图书馆整理图书
初始状态 [ 8 3 21 7 4 6 5 ] 找到最小的值为 1
第一次 [ 1 3 2 8 7 4 6 5 ] 3和2交换位置
第二次 [ 1 2 38 7 4 6 5 ] 3 和3交换位置
第三次 [1 2 3 47 8 6 5] 8 -- 4
第四次 [ 1 2 34 5 8 6 7 ] 7 -- 5
第五次 [ 1 2 34 5 6 8 7 ] 8 -- 6
第六次 [ 1 2 34 5 6 8 7 ] 8 -- 7
第七次 [ 1 2 34 5 6 7 8 ] 排序完成
冒泡排序
快速排序
堆排序
归并排序
总结
一个优秀的算法可以节省大量的资源。在各个领域中考虑到数据的各种限制和规范,要得到一个符合实际的优秀算法,得经过大量的推理和分析。这些只是最常用的几个算法,其中简单的介绍了各种算法的具体实现,随着接下来的学习,还会介绍其余算法的知识。