用于 BogoSort 或置换排序的 Python 程序


在本文中,我们将了解如何解决以下问题陈述。

问题陈述 − 我们得到一个数组,我们需要使用置换排序的概念对它进行排序。

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

现在,让我们了解一下以下实现中的解决方案−

示例

 实时演示

# random module
import random
# Sort
def bogoSort(a):
   n = len(a)
   while (is_sorted(a)== False):
      shuffle(a)
# check
def is_sorted(a):
   n = len(a)
   for i in range(0, n-1):
      if (a[i] > a[i+1] ):
         return False
   return True
# permutation
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("Sorted array :")
for i in range(len(a)):
   print (a[i],end=" ")

输出

Sorted array is :
1 3 3 4 4 5 5 6 8

所有变量都在局部范围内声明,并且其引用在上图中可见。

结论

在本文中,我们学习了如何编写用于 BogoSort 或置换排序的 Python 程序

更新于: 2019 年 12 月 20 日

185 次浏览

启动你的 事业

通过完成课程获得认证

开始
广告