如何仅使用条件(无数组)对4个数字进行排序

0 python sorting conditional

我在Python的入门课程中遇到了一些麻烦.我们的任务是按降序对四个整数输入进行排序,然后程序也应该指示您在输入中键入的顺序.

例如:输入:5,10,3,3输出:(1)第二输入(2)第一输入(3)第3,第4输入

唯一的问题是我们不应该使用数组或内置排序函数,而只能使用条件.

我们已经在课堂上完成了上半部分的代码.这是我们做的排序算法的示例:

# user enters a, b, c, d
if a > b:
    two = a
    one = b
if c > d:
    four = c
    three = d
if two > four:
    handle = three
    three = four
    four = two
    two = handle
Run Code Online (Sandbox Code Playgroud)

...等等.

我不知道如何从那里开始.问题是,由于您分配了新值,因此上面的代码会忘记原始输入的顺序.对我在这里缺少什么的想法?

Str*_*ids 6

您可以实现硬编码的冒泡排序

if a > b: b, a = a, b
if b > c: c, b = b, c
if c > d: d, c = c, d
if a > b: b, a = a, b
if b > c: c, b = b, c
if a > b: b, a = a, b
Run Code Online (Sandbox Code Playgroud)