没有内置的从高到低排序[关闭]

Posted

技术标签:

【中文标题】没有内置的从高到低排序[关闭]【英文标题】:Sort highest to lowest without built in [closed] 【发布时间】:2017-09-20 18:49:18 【问题描述】:

在没有内置函数的情况下,如何编写一个从高到低排序的排序函数?

例如:

A=[2,4,6]
sorthightolow(A)
A=[6,4,2]

【问题讨论】:

为什么没有内置?? 如果你的老板要求你不要使用内置插件,你应该辞职。如果老师/教授要求您不要使用内置插件,您应该自己做 - 或者至少提供一些代码并告诉我们您卡在哪里。 发布到codegolf.stackexchange.com - 这是“codegolf”的正确位置:D 搜索冒泡排序等排序技术。 一般来说,实现一个排序算法。有很多选择,包括如上所示的冒泡排序。您可能自己想出一个排序算法(但这可能不是最有效的) - 考虑如何手动对数字进行排序并实现它。 【参考方案1】:

我不知道为什么在没有内置函数的情况下会这样做,但这是一个有效的冒泡排序示例。 http://rosettacode.org/wiki/Sorting_algorithms/Bubble_sort#Python

def bubble_sort(seq):
    """Inefficiently sort the mutable sequence (list) in place.
       seq MUST BE A MUTABLE SEQUENCE.

       As with list.sort() and random.shuffle this does NOT return 
    """
    changed = True
    while changed:
        changed = False
        for i in xrange(len(seq) - 1):
            if seq[i] > seq[i+1]:
                seq[i], seq[i+1] = seq[i+1], seq[i]
                changed = True
    return seq

if __name__ == "__main__":
   """Sample usage and simple test suite"""

   from random import shuffle

   testset = range(100)
   testcase = testset[:] # make a copy
   shuffle(testcase)
   assert testcase != testset  # we've shuffled it
   bubble_sort(testcase)
   assert testcase == testset  # we've unshuffled it back into a copy

【讨论】:

以上是关于没有内置的从高到低排序[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Android 11.0 Camera 分辨率从高到低排列

输入10个人分数,求最高分,按分数从高到低排序&&去除最高分最低分,求平均分

数组排序

Android 系统APK-Camera 将相机像素从高到低降序排列

php数组排序

php 数组函数