今日目标:
常见排序和查找
常见排序和查找:
冒泡排序
选择排序
插入排序
选择排序:
假设"第一个值"是最小值,就要每一轮找到真正的最小值,并且和假设的这个值交换
[1, 3, 2, 10, -8, 9, -30, 7]
1、 [-30, 3, 2, 10, -8, 9, 1, 7]
2、 [-30, -8, 2, 10, 3, 9, 1, 7]
3、 [-30, -8, 1, 10, 3, 9, 2, 7]
4、 [-30, -8, 1, 2, 3, 9, 10, 7]
5、 [-30, -8, 1, 2, 3, 9, 10, 7]
6、 [-30, -8, 1, 2, 3, 7, 10, 9]
7、 [-30, -8, 1, 2, 3, 7, 9, 10]
插入排序:
插入排序,就是保证数是有序的,将后面无序的依次插入进来,在插入时也要保证
有序性
[1, 3, 2, 10, -8, 9, -30, 7]
1、 1, 3, 2, 10, -8, 9, -30, 7
2、 1, 2, 3, 10, -8, 9, -30, 7
3、 1, 2, 3, 10, -8, 9, -30, 7
4、 -8, 1, 2, 3, 10, 9, -30, 7
5、 -8, 1, 2, 3, 9, 10, -30, 7
6、 -30, -8, 1, 2, 3, 9, 10, 7
7、 -30, -8, 1, 2, 3, 7, 9, 10
二分查找:
有序的序列,二分就是将序列每次查找中间值,所以也被称为折半查找
-30, -8, 1, 2, 3, 7, 9, 10
排序方法: