使用python完成冒泡排序_Python实现冒泡排序的简单应用示例

本文实例讲述了Python实现冒泡排序的简单应用。分享给大家供大家参考,具体如下:

冒泡排序的主要思想是换位,例如在满足某种条件下将i和j调换:

if i>j:

p = i

i = j

j = p

举出例子如下:

随意输入两个数字,将两个数字排序变成最小后相加

例如第一个数是51423,第二个是88613

最后变成12345+13688=...

在python3的代码下:

# coding:utf-8

a = str(input('请输入第一个数:'))

b = str(input('请输入第二个数:'))

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

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

if arr_b[n]>arr_b[n + 1]:

empty = arr_b[n]

arr_b[n] = arr_b[n + 1]

arr_b[n + 1] = empty

##输出第一个数

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

##输出第二个数

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("脚本之家测试结果:")

print(str(x) + '+' + str(y) + '=',x+y)

运行结果:

附:原文中使用的代码

a = input('请输入第一个数:')

b = input('请输入第二个数:')

运行时报错:TypeError: 'int' object is not iterable,表示数据类型不匹配。因此这里改为:

a = str(input('请输入第一个数:'))

b = str(input('请输入第二个数:'))

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

希望本文所述对大家Python程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值