1.選擇排序
每次在待排序區間中選擇最小的往前排,隨著排序已排序區間不斷後移
#include//選擇排序
int a[6] = ;
int n = 5;
int main();
int n = 5;
int main();
int n = 5;
int main()
printf("\n");
sort(a,a+5);//a[0]--a[4] 五個數
for(int i=0;i<5;i++)
return 0;
}
注意 double 型別 輸入 lf ,輸出 f
#include#includeusing namespace std;
//double 型別的sort
int main()
sort(a,a+3);
for(int i=0;i<3;i++)
return 0;
}
cmp 函式的使用
#include#includeusing namespace std;
bool cmp (int a,int b)
int main();
sort(a,a+4,cmp);
for(int i=0;i<4;i++)
return 0;
}
code up刷題
問題 b: 特殊排序
題目鏈結 鏈結
#include#includeusing namespace std;
int main();
while(scanf("%d",&n)!=eof)a[100010];
bool cmp1(stu a,stu b)
bool cmp2(stu a,stu b)
else
}bool c***(stu a,stu b)
else
}int main()
for(int i=0;i題目描述
請寫乙個程式,對於乙個m行m列的(1輸入
共一組資料,輸入的第一行為乙個正整數,表示m,接下來的m行,每行m個整數表示方陣元素。
樣例輸入 copy
415 8 -2 6
31 24 18 71
-3 -9 27 13
17 21 38 69
樣例輸出 copy
159 145 144 135 81 60 44 32 28 27
#include#includeusing namespace std;int a[10][10];
bool cmp(int a,int b)
int main();//每次樣例重新清零
int cnt = 0;//
//每一行
for(int i=0;i題目鏈結 鏈結
#include#include#includeusing namespace std;
int a[10] = ;
bool cmp(int a,int b)
int main();
int c[10] = ;
for(int i=0;i<10;i++)else
}sort(b,b+n1,cmp);
for(int i=0;i題目鏈結 鏈結
#include#includeusing namespace std;
struct stu ;
bool cmp(stu a,stu b)
else
}int main()
int num[10]=;
for(int i =0;i= g)
}printf("%d\n",cnt);
for(int i=0;i}
return 0;
}
演算法筆記練習 4 1 排序 問題 I 排名
演算法筆記練習 題解合集 題目鏈結 題目描述 今天的上機考試雖然有實時的ranklist,但上面的排名只是根據完成的題數排序,沒有考慮每題的分值,所以並不是最後的排名。給定錄取分數線,請你寫程式找出最後通過分數線的考生,並將他們的成績按降序列印。輸入測試輸入包含若干場考試的資訊。每場考試資訊的第1行...
演算法筆記02 排序演算法
1.歸併排序 歸併排序將整體陣列不斷分成更小的陣列,最終結果是所有陣列中只含有乙個元素,然後兩兩不斷合併。時間複雜度為o nlogn 比如現在有陣列 第一次劃分,第二次劃分,第三次劃分,開始兩兩合併排序 第一次合併,第二次合併,第三次合併,歸併排序中有著遞迴的思想,不斷將陣列劃分成更小的陣列,在這種...
演算法筆記2 排序
1.選擇排序 首先,找到陣列中最小的那個元素,其次,將他和陣列第乙個元素交換位置,再次,在剩下的元素中找到最小的元素,將他和陣列的第二個元素交換位置。如此反覆,直到將整個陣列排序。不斷的選擇剩餘元素的最小值 2.插入排序 對部分有序陣列很有效 為了給要插入的元素騰出空間,我們需要將其餘所有元素在插入...