文章目录
- 1. 冒泡排序🍎
- 2. 直接插入排序🍎
- 3. 希尔排序(缩小增量排序)🍎
 
 
1. 冒泡排序🍎
- 🐧 基本思想:
 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
 大的数据往下沉(可以理解为:大的数据往最右边放),小的数据往上冒,每次都能把一个未排好序列中一个最大的数据放到其合适的位置。
 所以冒泡排序法是最右边的数据从右往左变得慢慢有序(每次都能把当前未排序的最大数据放到当前末尾正确位置)

- 🐧 时间复杂度:O( 
      
       
        
         
         
           n 
          
         
           2 
          
         
        
       
         n^2 
        
       
     n2),最好的情况,待排序的数据几乎有序( O(n))
- 🐧 稳定新:稳定的

2. 直接插入排序🍎
- 🐧 基本思想:
  
-  🐧 时间复杂度:O( n 2 n^2 n2),最好的情况( O(n) ) 
 注意:❗直接插入排序的效率是比冒泡排序的效率高的。
-  🐧 以下代码分析: 
 注意❗:直接插入排序,是把一个数据插入到一个有序的序列中。

3. 希尔排序(缩小增量排序)🍎
-  🐧 基本思想:🍳简单来说就两个步骤 
 ① 先进行预排序;
  ② 再进行直接插入排序; 
- 🐧 思路的过程如下:🍳

- 🐧 时间复杂度:O(n^1.3),注意它的效率是低于 O(n l o g 2 n log_2n log2n ) 级别排序算法的。

 



















