编写一个学生系统函数,用于将一个字典按置排序,不能使用sorted函数,可使用任意排序算法实现(冒泡排序,选择排序,快速排序,希尔排序等等),返回值为元素为元组的列表,程序异常返回None
时间: 2024-05-07 11:21:03 浏览: 12
以下是一个简单的选择排序实现,用于按照字典的值进行排序:
```python
def sort_students(students):
try:
student_list = list(students.items())
n = len(student_list)
for i in range(n):
min_index = i
for j in range(i+1, n):
if student_list[j][1] < student_list[min_index][1]:
min_index = j
student_list[i], student_list[min_index] = student_list[min_index], student_list[i]
return student_list
except:
return None
```
该函数将字典转换为元素为元组的列表,并通过选择排序算法按照值进行排序。如果程序出现异常,例如输入不是字典类型,则返回None。
相关问题
编写一个学生管理系统,用于将一个字典按置排序,不能使用sorted函数,可使用任意排序算法实现(冒泡排序,选择排序,快速排序,希尔排序等等),返回值为元素为元组的列表,并运行出来
以下是使用冒泡排序实现的学生管理系统代码:
```python
def sort_students(students):
n = len(students)
for i in range(n-1):
for j in range(n-i-1):
if students[j][1] > students[j+1][1]:
students[j], students[j+1] = students[j+1], students[j]
return students
students = {
'Tom': 80,
'John': 90,
'Mary': 85,
'Alice': 95
}
sorted_students = sort_students(list(students.items()))
print(sorted_students)
```
输出:
```
[('Tom', 80), ('Mary', 85), ('John', 90), ('Alice', 95)]
```
该代码使用冒泡排序对学生字典按照成绩从小到大进行排序,返回值为元素为元组的列表。可以根据需要修改排序算法。
编写一个函数,用于将一个字典按置排序,不能使用sorted函数,可使用任意排序算法实现(冒泡排序,选择排序,快速排序,希尔排序等等),返回值为元素为元组的列表,程序异常返回None
以下是一个使用冒泡排序进行字典排序的实现:
```python
def sort_dict(d):
try:
items = list(d.items())
n = len(items)
for i in range(n):
for j in range(n - i - 1):
if items[j][1] > items[j + 1][1]:
items[j], items[j + 1] = items[j + 1], items[j]
return items
except:
return None
```
这个函数接受一个字典作为参数,将字典转换成元素为元组的列表,并使用冒泡排序算法按照值进行排序。如果程序出现异常,则返回None。
相关推荐
![](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)
![](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)