Python实现的计数排序算法示例
作者:野牛程序员:2023-12-15 09:47:39算法阅读 3508
计数排序是一种非比较性的排序算法,适用于待排序元素的取值范围较小的情况。以下是一个用 Python 实现的计数排序算法的示例:
def counting_sort(arr): # 寻找最大值和最小值 max_val = max(arr) min_val = min(arr) # 计算计数数组的长度,并初始化计数数组 count_length = max_val - min_val + 1 count = [0] * count_length # 计算每个元素的频率 for num in arr: count[num - min_val] += 1 # 根据计数数组重构排序后的数组 sorted_arr = [] for i in range(count_length): sorted_arr.extend([i + min_val] * count[i]) return sorted_arr # 示例 unsorted_array = [4, 2, 7, 1, 9, 5, 3] sorted_array = counting_sort(unsorted_array) print(sorted_array)
请注意,这个示例假定输入数组中的元素都是整数,并且数组中的元素值范围相对较小。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:C中输出指令%f和%lf的区别
- 下一篇:C# 根据文件路径获取文件