欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)冒泡排序的簡單應(yīng)用示例

 更新時(shí)間:2017年12月11日 12:06:30   作者:TTyb  
這篇文章主要介紹了Python實(shí)現(xiàn)冒泡排序的簡單應(yīng)用,結(jié)合實(shí)例形式分析了Python基于冒泡排序?qū)崿F(xiàn)的輸入字符串?dāng)?shù)字排序與運(yùn)算操作,需要的朋友可以參考下

本文實(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)文章

最新評(píng)論