前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >冒泡排序应用

冒泡排序应用

作者头像
机器学习和大数据挖掘
发布2019-07-02 10:30:45
4360
发布2019-07-02 10:30:45
举报
文章被收录于专栏:数据挖掘数据挖掘数据挖掘

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

if i>j:
    p = i
    i = j
    j = p

举出例子如下:

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

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

最后变成12345+13688=...

在python3的代码下:

 1 a = input('请输入第一个数:')
 2 b = input('请输入第二个数:')
 3 arr_a = []
 4 arr_b = []
 5 for i in a:
 6     if i in a:
 7         arr_a.append(i)
 8 for j in b:
 9     if j in b:
10         arr_b.append(j)
11 ##冒泡排序a
12 for m in range(0,len(arr_a)):
13     for m in range(0, len(arr_a)):
14         if m+1<len(arr_a):
15             if arr_a[m]>arr_a[m + 1]:
16                 empty = arr_a[m]
17                 arr_a[m] = arr_a[m + 1]
18                 arr_a[m + 1] = empty
19 
20 ##冒泡排序b
21 for n in range(0,len(arr_b)):
22     for n in range(0, len(arr_b)):
23         if n+1<len(arr_b):
24             if arr_b[n]>arr_b[n + 1]:
25                 empty = arr_b[n]
26                 arr_b[n] = arr_b[n + 1]
27                 arr_b[n + 1] = empty
28 
29 ##输出第一个数
30 x = 0
31 for num_a in range(0,len(arr_a)):
32     x = int(arr_a[num_a])*(10**(len(arr_a)-num_a-1))+x
33 
34 ##输出第二个数
35 y = 0
36 for num_b in range(0,len(arr_b)):
37     y = int(arr_b[num_b])*(10**(len(arr_b)-num_b-1))+y
38 
39 print(str(x) + '+' + str(y) + '=',x+y)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-08-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档