BogoSort 或排列排序的 Python 程序

pythonserver side programmingprogramming

在本文中,我们将了解下面给出的问题陈述的解决方案。

问题陈述 − 我们有一个数组,我们需要使用排列排序的概念对其进行排序。

BogoSort 也称为排列排序,基于生成和测试范例。

现在让我们观察下面实现中的解决方案−

示例

# random module
import random
# Sort
def bogoSort(a):
   n = len(a)
   while (is_sorted(a)== False):
      shuffle(a)
# 检查
def is_sorted(a):
   n = len(a)
   for i in range(0, n-1):
      if (a[i] > a[i+1] ):
         return False
   return True
# 排列
def shuffle(a):
   n = len(a)
   for i in range (0,n):
      r = random.randint(0,n-1)
      a[i], a[r] = a[r], a[i]
# main
a = [1,5,3,4,8,6,3,4,5]
bogoSort(a)
print("排序后的数组为:")
for i in range(len(a)):
   print (a[i],end=" ")

输出

排序后的数组为:
1 3 3 4 4 5 5 6 8

所有变量均在局部范围内声明,其引用如上图所示。

结论

在本文中,我们了解了如何为 BogoSort 或排列排序编写 Python 程序


相关文章