选择排序和冒泡排序wei代码
时间: 2023-11-15 10:03:02 浏览: 79
选择排序和冒泡排序是两种常见的排序算法,它们都属于简单的比较排序算法,但在实现方式上略有不同。
首先说冒泡排序。冒泡排序的实现思路是通过依次比较相邻元素的大小,然后交换位置,直到数组完全有序。具体实现代码可以类似下面这样:
```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
```
而选择排序的实现思路则是每次选择最小的元素,然后放到已排序部分的末尾,直到整个数组有序。具体的实现代码可以如下:
```python
def selection_sort(arr):
n = len(arr)
for i in range(n):
min_idx = i
for j in range(i+1, n):
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
```
总的来说,冒泡排序和选择排序的代码实现都比较简单,只是在循环次数和交换位置的方式上有所不同。在实际应用中,选择排序通常要比冒泡排序快一些,因为选择排序的交换次数要少一些。但是在大多数情况下,这两种排序算法在性能上都不够高效,更常使用的是快速排序、归并排序等高级的排序算法。
阅读全文