各種排序及其注意點

2021-06-22 01:45:10 字數 688 閱讀 3934

排序常見,但是其思想很重要,而且在2分鐘之內完全寫對,不用除錯還需要進行深入理解才能到達這個要求:

對一般程式的要求:5行以內2min完成不用debug,100行內,2mindebug搞定。不要由於**基礎差而浪費時間在除錯上,真正思考的時間就沒了。

1、select排序

思想:從未排序的裡面選擇乙個最小的元素,與未排序的第乙個元素交換。

注意:注意判斷最小的數是第乙個的情況

void select(int *a, int n)

} if (minpos!=0)

}}

冒泡法:

思想:未排序的最大的元素放到未排序陣列的最後。

注意點:

1、排序的終止條件;

2、向後比較,及比較a[i]與a[i+1],最外層要從n-1開始

3、最外層的迴圈是從後向前的。

void bubble(int *a,int n)

} }}

插入排序:

思想:從未排序的的陣列中的第乙個元素插入到已排序的陣列中。一共有兩個動作1、找到位置2、如果不是合適的位置就swap向後移動

注意點:

void insert( int *a,int n)

} }}

各種排序演算法及其C 實現

基本思想 每次將乙個待排序的資料元素,插入到前面已經排好序的數列中的適當位置,使數列依然有序 直到待排序資料元素全部插入完為止。基本思想 每一趟從待排序的資料元素中選出最小 或最大 的乙個元素,順序放在已排好序的數列的最後,直到全部待排序的資料元素排完為止。基本思想 兩兩比較待排序資料元素的大小,發...

python各種問題及注意點總結

1引數解析的新增子命令import argparse 首先定義兩個不同的函式 def a x return x def b x return x parser argparse.argumentparser 獲得乙個主直譯器 subparser parser.add subparsers dest ...

邊框border相關屬性以及其他注意點

一 邊框 border 單獨設定 border top 邊框的寬度 邊框的線型 顏色 順序可以隨便調 border bottom border left border right 線型實線 solid 虛線 dashed 雙線 double 點狀線dotted 全邊框設定 border 邊框的寬度 ...