氣泡排序:
氣泡排序(bubble sort),是一種電腦科學領域的較簡單的排序演算法。它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果他們的順序(如從大到小、首字母從a到z)錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說該元素已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端(公升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會上浮到頂端一樣,故名「氣泡排序」。
氣泡排序**的演算法思想:
void bubblesort(int arr, int len)
} }
for (i = 0; i < len; i++)
}
若走完某一趟,發現排序已經排好了,沒有進行交換。減少後面的不必要迴圈次數(冒泡的優化法):
void bubblesort1(int arr, int len)
} if (flag == 0)
}
}
選擇排序:
選擇排序(selection sort)是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。 選擇排序是不穩定的排序方法。
**的演算法思想:
void selectsort(int arr, int len)
} }
}
直接插入排序:
直接插入排序,指每次從無序表中取出第乙個元素,把它插入到有序表的合適位置,使有序表仍然有序。具體方法是第一趟比較前兩個數,然後把第二個數按大小插入到有序表中; 第二趟把第三個資料與前兩個數從前向後掃瞄,把第三個數按大小插入到有序表中;依次進行下去,進行了(n-1)趟掃瞄以後就完成了整個排序過程。
它是由兩層巢狀迴圈組成的,外層迴圈標識並決定待比較的數值,內層迴圈為待比較數值確定其最終位置。直接插入排序是將待比較的數值與它的前乙個數值進行比較,所以外層迴圈是從第二個數值開始的。當前一數值比待比較數值大的情況下繼續迴圈比較,直到找到比待比較數值小的並將待比較數值置入其後一位置,結束該次迴圈。
**的演算法思想:
void insertsort(int arr, int len)
else
break;
} arr[j + 1] = temp;
}}
特點:原有的陣列越有序,排序就越快。 c語言入門
譚浩強版本的c語言教程學了兩個月什麼都沒學會,所以轉到c語言設計k r版本學習。2012年4月29日 15 39 14 1.入門 編乙個程式 請列印出下列內容 hello,world 程式源 如下 this is a first programe 收穫 1.乙個c語言程式,無論其大小如何,都是由函式...
C語言入門
include include include define max num 20 int add int,int int main int add int a,int b include 標準io庫 include include 字串操作函式庫 define max num 如上為預處理指令,由...
c語言入門
1.先宣告 定義變數,再給它賦值。int 變數 scanf d 變數 printf d 變數 2.scanf printf 整int d d 實float f f double d f 字元char c c 3.c語言的識別符號由 字母 數字 下劃線組成。4.常用資料型別 int 整型 d char...