python冒泡排序练习题
时间: 2023-10-26 21:08:40 浏览: 432
好的,以下是 Python 冒泡排序的代码示例:
```python
def bubble_sort(arr):
n = len(arr)
for i in range(n):
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
```
这里的 `arr` 是待排序的列表,函数返回排序后的列表。冒泡排序的基本思想是从头到尾依次比较相邻的两个元素,如果前一个元素大于后一个元素,则交换它们的位置,一轮比较下来,最大的元素就会被交换到最后面。重复这个过程,直到所有元素都排好序。
相关问题
python排序题100题及答案
Python排序题100题及答案是一组用于练习排序算法的问题和它们的解答。这些问题旨在帮助学习者熟悉不同的排序算法,并通过实践来加深对Python编程的理解。以下是其中几个问题和解答的示例:
1. 将一个列表按升序排序。
```
list = [3, 1, 4, 2, 5]
sorted_list = sorted(list)
print(sorted_list) # 输出 [1, 2, 3, 4, 5]
```
2. 将一个列表按降序排序。
```
list = [3, 1, 4, 2, 5]
sorted_list = sorted(list, reverse=True)
print(sorted_list) # 输出 [5, 4, 3, 2, 1]
```
3. 使用冒泡排序算法对列表进行排序。
```
def bubble_sort(arr):
n = len(arr)
for i in range(n-1):
for j in range(n-1-i):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
list = [3, 1, 4, 2, 5]
bubble_sort(list)
print(list) # 输出 [1, 2, 3, 4, 5]
```
4. 使用插入排序算法对列表进行排序。
```
def insertion_sort(arr):
n = len(arr)
for i in range(1, n):
key = arr[i]
j = i-1
while j >= 0 and arr[j] > key:
arr[j+1] = arr[j]
j -= 1
arr[j+1] = key
list = [3, 1, 4, 2, 5]
insertion_sort(list)
print(list) # 输出 [1, 2, 3, 4, 5]
```
这些只是其中一小部分的题目和示例解答。排序算法还包括选择排序、快速排序、归并排序等等。学习者可以通过练习这些题目,不断提升自己的排序算法和Python编程能力。
阅读全文