Python實(shí)現(xiàn)冒泡排序的簡單應(yīng)用示例
本文實(shí)例講述了Python實(shí)現(xiàn)冒泡排序的簡單應(yīng)用。分享給大家供大家參考,具體如下:
冒泡排序的主要思想是換位,例如在滿足某種條件下將i和j調(diào)換:
if i>j: p = i i = j j = p
舉出例子如下:
隨意輸入兩個(gè)數(shù)字,將兩個(gè)數(shù)字排序變成最小后相加
例如第一個(gè)數(shù)是51423,第二個(gè)是88613
最后變成12345+13688=...
在python3的代碼下:
# coding:utf-8 a = str(input('請(qǐng)輸入第一個(gè)數(shù):')) b = str(input('請(qǐng)輸入第二個(gè)數(shù):')) arr_a = [] arr_b = [] for i in a: if i in a: arr_a.append(i) for j in b: if j in b: arr_b.append(j) ##冒泡排序a for m in range(0,len(arr_a)): for m in range(0, len(arr_a)): if m+1<len(arr_a): if arr_a[m]>arr_a[m + 1]: empty = arr_a[m] arr_a[m] = arr_a[m + 1] arr_a[m + 1] = empty ##冒泡排序b for n in range(0,len(arr_b)): for n in range(0, len(arr_b)): if n+1<len(arr_b): if arr_b[n]>arr_b[n + 1]: empty = arr_b[n] arr_b[n] = arr_b[n + 1] arr_b[n + 1] = empty ##輸出第一個(gè)數(shù) x = 0 for num_a in range(0,len(arr_a)): x = int(arr_a[num_a])*(10**(len(arr_a)-num_a-1))+x ##輸出第二個(gè)數(shù) y = 0 for num_b in range(0,len(arr_b)): y = int(arr_b[num_b])*(10**(len(arr_b)-num_b-1))+y print("腳本之家測試結(jié)果:") print(str(x) + '+' + str(y) + '=',x+y)
運(yùn)行結(jié)果:
附:原文中使用的代碼
a = input('請(qǐng)輸入第一個(gè)數(shù):') b = input('請(qǐng)輸入第二個(gè)數(shù):')
運(yùn)行時(shí)報(bào)錯(cuò):TypeError: 'int' object is not iterable ,表示數(shù)據(jù)類型不匹配。因此這里改為:
a = str(input('請(qǐng)輸入第一個(gè)數(shù):')) b = str(input('請(qǐng)輸入第二個(gè)數(shù):'))
PS:這里再為大家推薦一款關(guān)于排序的演示工具供大家參考:
在線動(dòng)畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python加密解密算法與技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python3實(shí)現(xiàn)騰訊云OCR識(shí)別
這篇文章主要為大家詳細(xì)介紹了Python3實(shí)現(xiàn)騰訊云OCR識(shí)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11pytorch實(shí)現(xiàn)CNN卷積神經(jīng)網(wǎng)絡(luò)
這篇文章主要為大家詳細(xì)介紹了pytorch實(shí)現(xiàn)CNN卷積神經(jīng)網(wǎng)絡(luò),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02windows中python實(shí)現(xiàn)自動(dòng)化部署
本文主要介紹了windows中python實(shí)現(xiàn)自動(dòng)化部署,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08Python爬蟲爬取微博熱搜保存為 Markdown 文件的源碼
這篇文章主要介紹了Python爬蟲爬取微博熱搜保存為 Markdown 文件,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02在VS2017中用C#調(diào)用python腳本的實(shí)現(xiàn)
這篇文章主要介紹了在VS2017中用C#調(diào)用python腳本的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07python計(jì)算機(jī)視覺OpenCV庫實(shí)現(xiàn)實(shí)時(shí)攝像頭人臉檢測示例
這篇文章主要為大家介紹了python使用OpenCV實(shí)現(xiàn)實(shí)時(shí)攝像頭人臉檢測的示例過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-10-10Pytorch數(shù)據(jù)讀取與預(yù)處理該如何實(shí)現(xiàn)
這篇文章主要介紹了Pytorch數(shù)據(jù)讀取與預(yù)處理該如何實(shí)現(xiàn),幫助大家更好的理解和學(xué)習(xí)使用Pytorch,感興趣的朋友可以了解下2021-03-03python獲取時(shí)間戳的實(shí)現(xiàn)示例(10位和13位)
這篇文章主要介紹了python獲取時(shí)間戳的實(shí)現(xiàn)示例(10位和13位),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09