编程实现合并排序和快速排序 编程实现合并排序和快速排序算法。编程语言可以选C、C++、Java、Python任意一种。
时间: 2023-06-07 15:08:53 浏览: 102
编程实现希尔、快速、堆、归并排序算法,随机产生10000个随机数存入磁盘文件,读取,并将不同排序方法的结果存入文件中(含报告)
5星 · 资源好评率100%
好的,关于编程实现合并排序和快速排序算法,以下是示例 Python 代码:
# 合并排序
def merge_sort(list):
if len(list) <= 1:
return list
mid = len(list) // 2
left_list = list[:mid]
right_list = list[mid:]
left_list = merge_sort(left_list)
right_list = merge_sort(right_list)
return merge(left_list, right_list)
def merge(left, right):
merged = []
left_idx = 0
right_idx = 0
while left_idx < len(left) and right_idx < len(right):
if left[left_idx] < right[right_idx]:
merged.append(left[left_idx])
left_idx += 1
else:
merged.append(right[right_idx])
right_idx += 1
if left_idx == len(left):
merged.extend(right[right_idx:])
else:
merged.extend(left[left_idx:])
return merged
# 快速排序
def quick_sort(array):
if len(array) <= 1:
return array
else:
pivot = array[0]
less = [x for x in array[1:] if x <= pivot]
greater = [x for x in array[1:] if x > pivot]
return quick_sort(less) + [pivot] + quick_sort(greater)
以上就是 Python 实现的合并排序和快速排序算法代码。若您希望使用其他编程语言实现,您可以在网上搜索相关的代码实现。
阅读全文