码迷,mamicode.com
首页 > 编程语言 > 详细

冒泡排序应用

时间:2016-08-02 01:07:21      阅读:291      评论:0      收藏:0      [点我收藏+]

标签:

冒泡排序的主要思想是换位,例如在满足某种条件下将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)

 

冒泡排序应用

标签:

原文地址:http://www.cnblogs.com/TTyb/p/5726151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!