Python计数排序程序
在本文中,我们将详细了解下面问题表述的解决方案。
问题表述− 给定一个数组,我们需要使用计数排序的概念对数组进行排序。
计数排序是一种技术,其中我们在特定范围内的键值下操作。它涉及计算具有不同键和值的对象的数量。最后,我们进行算术计算来获取每个对象的位置并显示输出。
现在,让我们观察下面实现中的解决方案 −
示例
def countSort(arr): # The output character array that will have sorted arr output = [0 for i in range(256)] # Create a count array initialized with 0 count = [0 for i in range(256)] # as strings are immutable ans = ["" for _ in arr] # count for i in arr: count[ord(i)] += 1 # position of character in the output array for i in range(256): count[i] += count[i-1] # output character array for i in range(len(arr)): output[count[ord(arr[i])]-1] = arr[i] count[ord(arr[i])] -= 1 # array of sorted charcters for i in range(len(arr)): ans[i] = output[i] return ans # main arr = "Tutorialspoint" ans = countSort(arr) print ("Sorted character array is "+str("".join(ans)))
输出 −
Sorted character array is Taiilnooprsttu
所有变量都在本地作用域中声明,其引用在上图中可见。
结论
在本文中,我们了解了如何制作 Python计数排序程序。
广告