排序 2023年華中科技大學

2021-10-03 21:50:00 字數 1074 閱讀 1325

排序演算法 暫無

//本題採用快速排序試試,練練手 

#include

"bits/stdc++.h"

using

namespace std;

const

int maxn =

110;

//輸入的數字數,也就是長度

int n;

//儲存資料的陣列

int a[maxn]

;int

partition

(int a,

int left,

int right)

a[left]

= a[right]

;//將right賦值到左邊

while

(left != right && a[left]

<= temp)

a[right]

= a[left];}

//最後left等於right,這就是中心點應該在的地方

a[left]

= temp;

return left;

}void

quicksort

(int a,

int left,

int right)

}void

print

(int a,

int n)

printf

("\n");

}int

main()

quicksort

(a,1

,n);

print

(a,n);}

return0;

}

排序演算法有很多種,到底應該選哪種呢?

我們應該從時間複雜度和空間複雜度的角度去考慮,綜合選取合適的排序演算法;

其他需要注意的就是快速排序的一些**細節。。。

c++11與c++14日常寫題沒啥區別,大佬推薦c++14,它快一些。

華中科技大學 找位置

題目描述 對給定的乙個字串,找出有重複的字元,並給出其位置,如 abcaaab12ab12 輸出 a,1 a,4 a,5 a,10,b,2 b,11,1,8 1,12,2,9 2,13。輸入描述 輸入包括乙個由字母和數字組成的字串,其長度不超過100。輸出描述 可能有多組測試資料,對於每組資料,按照...

華中科技大學複試 成績排序

題目描述 有n個學生的資料,將學生資料按成績從低到高排序,如果成績相同則按姓名字元的字典序由小到大排序,如果姓名的字典序也相同則按照學生的年齡從小到大排序,並輸出n個學生排序後的資訊。輸入描述 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報...

華中科技大學複試 對稱矩陣

題目描述 輸入乙個n維矩陣,判斷是否對稱。輸入描述 輸入第一行包括乙個數 n 1 n 100 表示矩陣的維數。接下來的n行,每行包括n個數,表示n n矩陣的元素。輸出描述 可能有多組測試資料,對於每組資料,輸出 yes 表示矩陣為對稱矩陣。輸出 no 表示矩陣不是對稱矩陣。示例輸入4 16 19 1...