今天在上資料結構與演算法課的時候,老師突擊測試,讓我們用氣泡排序演算法實現對多個字串的降排序,平常
老師講課都用c++,但我沒學過,而之前學過的c語言太久沒用,也忘得差不多了,迫不得已,拿起了最近在學習的
python試水。當時想網路借鑑一下別人的**,但是沒找到太準確的,還是自己動手寫了,當時時間太短,寫得不
太完整,回頭自己在pycharm除錯實現了。
上面寫這麼多也只是記錄一下自己在專業方面的學習過程,深知自己還是乙隻菜鳥,但是冰封三尺非一日之寒,
好的成績都是由每乙個小進步累積而成的,共勉!
———————————————————————————————————————分割線————————————————————————————————————————
對多個字串使用氣泡排序演算法的python實現,在網路上多見是c語言的版本,本人感覺python寫的更加簡單。
其中,字串的比較,python可以直接用 大小於號 來表示,而c語言則需要用strcmp函式。
def bubblesort(string):
ls = string.split(',') # 將字串以','為標誌分開,每個子字串存入列表ls
n = len(ls) # n為ls的元素個數
while n > 1: # 氣泡排序的大迴圈,從n-1次開始,每一趟 減1次相鄰元素間的比較
for i in range(n-1): # 氣泡排序的小迴圈,第一趟n-1次比較,第二趟n-2次,逐漸遞減至1次
if ls[i] < ls[i+1]: # 比較相鄰字串大小,次序相反的元素交換,降冪排序
a = ls[i] # 元素交換
ls[i] = ls[i+1]
ls[i+1] = a
n = n-1 # 控制小迴圈的迴圈次數
print(ls) # 輸出排序後的結果
bubblesort('sc,ad,as,xx,ew,gbd,adx,dfa') # 呼叫函式
使用氣泡排序,排序多個字串
define crt secure no warnings 1 include include include int main char str 指標陣列,每乙個都是字元指標 int i 0 int j 0 int flag int size sizeof str sizeof str 0 for...
C語言 氣泡排序排序多個字串
strcmp函式 原型 extern int strcmp const char s1,const char s2 用法 include 功能 比較字串s1和s2。一般形式 strcmp 字串1,字串2 說明 當s1s2時,返回值 0 即 兩個字串自左向右逐個字元相比 按ascii值大小相比較 直到...
C語言 寫氣泡排序可以排序多個字串。
此題的解決思路為 首先整體思路為氣泡排序法,其次它是要排序多個字串,這裡就要用到字串的比較strcmp,通過判斷比較兩字串然後再進行交換排序。具體 如下 include include include void bubble str char arr,int sz int main int i 0 ...