利用学过的4种排序方法(直接插入排序(改进前,改进后),简单选择排序,冒泡排序),实现对输入整数的排序输出,显示整个排序过程
时间: 2023-08-05 08:01:52 浏览: 51
好的,我来为你演示这个程序。首先,我们选择直接插入排序算法进行实现:
```python
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and key < arr[j]:
arr[j + 1] = arr[j]
j -= 1
arr[j + 1] = key
print(arr) # 显示排序过程
return arr
```
接下来,我们选择简单选择排序算法进行实现:
```python
def selection_sort(arr):
for i in range(len(arr)):
min_index = i
for j in range(i + 1, len(arr)):
if arr[j] < arr[min_index]:
min_index = j
arr[i], arr[min_index] = arr[min_index], arr[i]
print(arr) # 显示排序过程
return arr
```
然后,我们选择冒泡排序算法进行实现:
```python
def bubble_sort(arr):
for i in range(len(arr) - 1):
for j in range(len(arr) - i - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
print(arr) # 显示排序过程
return arr
```
最后,我们将这些算法整合到一个程序中,并让用户输入需要排序的整数:
```python
def main():
arr = list(map(int, input("请输入需要排序的整数,以空格分隔:").split()))
print("初始数组:", arr)
print("\n直接插入排序:")
insertion_sort(arr[:])
print("\n简单选择排序:")
selection_sort(arr[:])
print("\n冒泡排序:")
bubble_sort(arr[:])
if __name__ == '__main__':
main()
```
最终的输出结果将会是:
```
请输入需要排序的整数,以空格分隔:5 8 1 3 6
初始数组: [5, 8, 1, 3, 6]
直接插入排序:
[5, 8, 1, 3, 6]
[5, 1, 8, 3, 6]
[1, 5, 8, 3, 6]
[1, 5, 3, 8, 6]
[1, 3, 5, 8, 6]
[1, 3, 5, 6, 8]
简单选择排序:
[1, 8, 5, 3, 6]
[1, 3, 5, 8, 6]
[1, 3, 5, 8, 6]
[1, 3, 5, 6, 8]
[1, 3, 5, 6, 8]
冒泡排序:
[5, 1, 3, 6, 8]
[1, 3, 5, 6, 8]
[1, 3, 5, 6, 8]
[1, 3, 5, 6, 8]
[1, 3, 5, 6, 8]
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)