Golang的排序和查找
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.排序的基本介绍
排序是将一组数据,依指定的顺序进行排列的过程。排序的分类如下
1>.内部排序
指将需要处理的所有数据都家在到内存存储器中进行排序,其中包括交换式排序法,选择式排序法和插入式排序法。
2>.外部排序法
数据量过大,无法全部加载到内存中,需要借助外部存储进行排序,其中包括合并排序法和直接合并排序法。
二.冒泡排序
1>.冒泡排序基本思想
通过对待排序序列从前向后(从下标较大的元素开始),一次比较相邻元素的排序码,若发现逆序则交换,使排序码较小的元素逐渐从后部移向前部(从下标较大的单元移向下标较小的单元),就像水底下的气泡一样逐渐向上冒。
因为排序过程的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志flag判断元素是否进行过交换。从而减少不必要的比较(优化)。
2>.代码实现
三.查找
1>.查找介绍
在Golang中,我们常用的查找有两种:顺序查找和二分查找(该数组是有序)。
2>.顺序查找案例
3>.二分查找案例