1樓:硪丨曖戀
#include
using namespace std;
template
void bubble(t arr, int n)}for (i=0; i
void insert(t arr, int n){//插入排序
int i,j,pos;
t temp;
for (i=0; i
2樓:張壯同學
#include
using namespace std;
template
void bubble(t arr, int n)}for (i=0; icout << arr[i] << endl;
}//從小到大排序
template
void insert(t arr, int n)}temp = arr[i];
arr[i] = arr[pos];
arr[pos] = temp;
}for (i=0; icout << arr[i] << endl;
}int main()
;float f[7] = ;
//bubble(i, 7);
insert(i, 7);
cout << endl;
//bubble(f, 7);
insert(f, 7);
return 0;}
3樓:匿名使用者
void bubble_sort(int a, int n)}i++;
}while(!bo);}冒泡
int insertsort(int r){for(int i=2;i<=n;i++){x=r[i];j=i-1;
while(x
用matlab編寫兩個排序函式,怎麼分別使用插入排序演算法、起泡排序演算法?
c語言程式設計。。。輸入一陣列,按從大到小的順序排列(提示:可用選擇排序、氣泡排序或插入排序的任意一種)。 10
4樓:劉海桃的女兒
選擇排序:選擇法排序是一種簡單的容易實現的對資料排序的演算法。
以整形陣列元素為例,有陣列a[10](以c語言為例描述),即a[0],a[1],…,a[8],a[9](假設其元素均互不相同)。要求對其元素排序使之遞增有序。
首先以一個元素為基準,從一個方向開始掃描,比如從左至右掃描,以a[0]為基準。
接下來從a[0],…,a[9]中找出最小的元素,將其與a[0]交換。
然後將基準位置右移一位,重複上面的動作,比如,以a[1]為基準,找出a[1]~a[9]中最小的,將其與a[1]交換。
一直進行到基準位置移到陣列最後一個元素時排序結束(此時基準左邊所有元素均遞增有序,而基準為最後一個元素,故完成排序)。
以下為一個用c描述的函式實現上述排序:
void sort(int array,int n)
}printf("排序結果:");
for( i = 0; i < 10; i ++ ) //依次輸出排序結果
printf("%d\t",a[ i ]);
printf("\n");
}pascal為例子
procedure bubble_sort(var l:list);
vari,j:position;
begin
for i:=first(l) to last(l)-1 do
for j:=first(l) to last(l)-i do
if l[j]>l[j+1] then 4 swap(l[j],l[j+1]);
//交換l[j]和l[j+1]
end;
下面使用c++語言編寫
#include
void main()
cout<
}c語言中的排序方法選擇方法是首先從要選擇的數中選擇最大(或最小)的數,將它放在第一個位置,然後從剩下的數中選擇最大(或最小)的數放在第二個位置,直到最後從剩下的兩個數中選擇最大(或最小)的數放在倒數第二個位置,剩下的一個數放在最後位置,完成排序。 5樓:匿名使用者 一個一個的進行比較,設一個min,並把第一個值賦給它,當遇到比他小的數的時候進行互換,直到最後。 6樓:匿名使用者 #include main() } for(i=1;i<11;i++) printf("%d\n",a[i] );} 7樓:_要掵 可以申請一個臨時變數 來幫助排序。 int a[5] = ; int temp; //臨時變數 int i,j; for(i=0;i<5;i++) for(j=0;j<4;j++)} c語言實現氣泡排序,選擇排序,插入排序及其移動次數 8樓:一個孤獨的差生 你說的排序我給你源**,在**裡面簡單的說了一下演算法思想。 如果是要學習,我建議去看書和看別人的部落格,明白排序的思想, 只有明白了演算法的思想,才能輕易的看懂排序的**。 我的**都是給定好的資料,是為了方便測試。 氣泡排序: 演算法:1、相鄰兩個元素進行比較,即0號元素和1號元素、1號元素和2號元素、2號元素和3號元素,依此類推。 2、每輪比較之後,就會產生一個最值,並且這個最值總是在最後面才出現,如同魚兒吐泡。 3、第一輪比較之後,最值在最後面;第二輪比較之後,次最值在倒數第二個位置,依此類推。 #include array[j+1]) swap(array+j,array+j+1); }int main(void) ;bubble_sort(array,10); for(int i=0; i<10; i++) cout< 選擇排序: 演算法:1、第一輪比較:假設第一個元素是最小的;第二輪比較:假設第二個元素是最小的,依此類推。 1、用假設的元素對陣列進行遍歷比較,不符合要求的記錄其下標。 2、每輪比較之後才判斷假設是否成立,不成立的話,就交換資料。 #include using namespace std; void swap(int *elem_1, int *elem_2) void select_sort(int *array,int len) }int main(void) ;select_sort(array,10); for(int i=0; i<10; i++) cout< 插入排序: 演算法:1、將要排序的陣列看成一個無序和有序陣列。 2、有序陣列中騰出一個適當的位置。 3、將無序的陣列元素逐漸插入到有序陣列中。 #include using namespace std; void insert_sort(int *array,int len) }int main(void) ;insert_sort(array,10); for(int i=0; i<10; i++) cout< 9樓:ps小卒 順序o(n) 逆序哦o(n)隨機o(n) c語言的 如下 include void bubble sort int num 50 int n int main 其他排序演算法 1 插入排序 插入排序 已知一組升序排列資料a 1 a 2 a n 一組無序資料b 1 b 2 b m 需將二者合併成一個升序數列。首先比較b 1 與a 1 的值,若... include int main c語言 編寫一個程式,實現氣泡排序,將輸入的n個整數按降序進行排序,並輸出。include const int maxsize 100 int main for i 0 i n i printf d a i printf n return 0 如圖所示 short ... 1 寫一個簡單選擇排序法的函式名,包含引數。int selectsort int listdata,int listlength 2 寫兩個迴圈,在迴圈中應用簡單選擇插入排序 int selectsort int listdata,int listlength int i j int length ...用陣列作函式引數,定義實現氣泡排序的函式,在主函式中完成資料的輸入和輸出
用c語言輸入實數,用氣泡排序法降序排序並輸出
c語言怎樣通過函式呼叫實現選擇排序法