p ython实现选择排序
时间: 2024-09-29 22:11:00 浏览: 63
Python实现选择排序是一种简单直观的排序算法,它的基本思想是每次从未排序的部分找出最小(或最大)元素,然后放到已排序部分的末尾。以下是选择排序的一个典型实现:
```python
def selection_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# 找到未排序部分中的最小值
min_index = i
for j in range(i+1, n):
if arr[j] < arr[min_index]:
min_index = j
# 将找到的最小值与当前位置交换
arr[i], arr[min_index] = arr[min_index], arr[i]
return arr
# 示例
unsorted_array = [64, 25, 12, 22, 11]
sorted_array = selection_sort(unsorted_array)
print("Sorted array:", sorted_array)
相关问题
p ython绝对值排序
可以使用Python的内置函数`sorted`和`abs`来对一个列表中的元素按照绝对值进行排序。下面是示例代码:
```python
my_list = [-10, 5, -3, 2, -7, 1]
sorted_list = sorted(my_list, key=abs)
print(sorted_list)
```
输出如下:
```
[1, 2, -3, 5, -7, -10]
```
在这个例子中,`sorted`函数接受一个关键字参数`key`,该参数指定了用于排序的函数。在这里,我们使用`abs`函数作为关键字,以便对元素按照绝对值进行排序。
p ython dataframe排序
Python中的DataFrame排序可以使用sort_values()方法。该方法可以按照指定的列或多列进行排序,也可以指定升序或降序排列。
例如,假设有一个DataFrame df,其中包含三列A、B、C,我们想按照列A进行升序排列,可以使用以下代码:
df.sort_values(by='A', ascending=True)
如果要按照多列进行排序,可以传递一个列表作为by参数,例如:
df.sort_values(by=['A', 'B'], ascending=[True, False])
这将首先按照列A进行升序排列,然后在每个相同的A值中按照列B进行降序排列。
注意,sort_values()方法返回一个新的DataFrame,原始的DataFrame不会被修改。如果要在原始DataFrame上进行排序,可以使用inplace参数:
df.sort_values(by='A', ascending=True, inplace=True)
阅读全文