输入10个数,编程实现插入排序、快速排序、选择排序三类算法。
时间: 2023-07-15 07:14:58 浏览: 65
以下是Python 代码实现:
```python
# 插入排序
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and arr[j] > key:
arr[j + 1] = arr[j]
j -= 1
arr[j + 1] = key
return arr
# 快速排序
def quick_sort(arr):
if len(arr) <= 1:
return arr
else:
pivot = arr[0]
left = []
right = []
for i in range(1, len(arr)):
if arr[i] < pivot:
left.append(arr[i])
else:
right.append(arr[i])
return quick_sort(left) + [pivot] + quick_sort(right)
# 选择排序
def selection_sort(arr):
for i in range(len(arr)):
min_index = i
for j in range(i+1, len(arr)):
if arr[min_index] > arr[j]:
min_index = j
arr[i], arr[min_index] = arr[min_index], arr[i]
return arr
# 测试
arr = [5, 2, 8, 3, 1, 6, 9, 4, 7, 10]
print("插入排序结果:", insertion_sort(arr))
print("快速排序结果:", quick_sort(arr))
print("选择排序结果:", selection_sort(arr))
```
输出结果为:
```
插入排序结果: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
快速排序结果: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
选择排序结果: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
```