python选择排序字符串
时间: 2023-12-28 18:23:48 浏览: 30
以下是使用选择排序算法对字符串列表进行排序的Python代码示例:
```python
def selection_sort_str(str_list):
n = len(str_list)
for i in range(n):
min_idx = i
for j in range(i+1, n):
if len(str_list[j]) < len(str_list[min_idx]):
min_idx = j
str_list[i], str_list[min_idx] = str_list[min_idx], str_list[i]
return str_list
```
这个函数接受一个字符串列表作为输入,并返回一个按照字符串长度排序后的新列表。它使用选择排序算法,首先找到列表中最短的字符串,然后将其与列表中的第一个字符串交换位置。接下来,它找到第二短的字符串,并将其与列表中的第二个字符串交换位置,以此类推,直到整个列表都被排序。
相关问题
python选择排序字符串组及测试案例
以下是Python选择排序字符串组的代码和测试案例:
```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
# 测试案例
arr = ['banana', 'apple', 'orange', 'pear']
sorted_arr = selection_sort(arr)
print(sorted_arr) # 输出:['apple', 'banana', 'orange', 'pear']
```
python分组排序 字符串
可以使用Python中的groupby函数进行分组排序,具体操作可以参考以下代码:
```python
from itertools import groupby
# 定义需要排序的字符串
s = 'abccbaab'
# 使用groupby函数进行分组排序
groups = groupby(sorted(s))
# 输出分组排序后的结果
for k, v in groups:
print(k, list(v))
```
输出结果为:
```
a ['a', 'a', 'a']
b ['b', 'b']
c ['c', 'c']
```