练习
原创...大约 3 分钟
菜单排序
假设你是一家餐厅的老板,你有一份包含所有菜品名称及其价格的列表。你需要编写一个程序来按照价格对这些菜品进行快速排序,以便能够快速找到最贵和最便宜的菜品。
menu = [("牛排", 99), ("沙拉", 49), ("汤", 29), ("甜点", 59)]
quick_sort_menu(menu, 0, len(menu)-1)
print("价格排序后的菜单:", menu)
# 价格排序后的菜单: [('汤', 29), ('沙拉', 49), ('甜点', 59), ('牛排', 99)]
图书馆书籍整理
你在图书馆工作,需要管理数千本书籍。每本书有一个标题和出版年份。请使用快速排序算法,按照出版年份对书籍进行排序,这样可以更容易地找到老书和新书。
books = [("书A", 2001), ("书B", 1995), ("书C", 2010), ("书D", 1980)]
quick_sort_books(books, 0, len(books)-1)
print("按出版年份排序后的书籍:", books)
# 按出版年份排序后的书籍: [('书D', 1980), ('书B', 1995), ('书A', 2001), ('书C', 2010)]
旅行背包打包
准备一次旅行时,你有一个物品列表,每个物品都有重量和重要性评分。使用快速排序按照重要性评分对物品进行排序,帮助决定应该优先打包哪些物品。
items = [("帐篷", 10), ("水壶", 8), ("睡袋", 10), ("火机", 5)]
quick_sort_items(items, 0, len(items)-1)
print("按重要性评分排序后的物品:", items)
# 按重要性评分排序后的物品: [('帐篷', 10), ('睡袋', 10), ('水壶', 8), ('火机', 5)]
音乐播放列表排序
你的音乐播放器有一个包含多首歌曲的播放列表,每首歌曲都有一个播放次数统计。编写一个程序使用快速排序按照播放次数对歌曲进行排序,从而创建一个从最受欢迎到最少播放的歌曲列表。
songs = [("歌曲A", 150), ("歌曲B", 90), ("歌曲C", 300), ("歌曲D", 120)]
quick_sort_songs(songs, 0, len(songs)-1)
print("按播放次数排序后的歌曲:", songs)
# 按播放次数排序后的歌曲: [('歌曲C', 300), ('歌曲A', 150), ('歌曲D', 120), ('歌曲B', 90)]
社交媒体照片时间线
你想整理你的社交媒体照片,每张照片都有一个时间戳。使用快速排序按时间顺序对照片进行排序,这样你就可以更容易地浏览从旧到新的照片。
photos = [("照片A", 20200101), ("照片B", 20191225), ("照片C", 20200315), ("照片D", 20181112)]
quick_sort_photos(photos, 0, len(photos)-1)
print("按时间排序后的照片:", photos)
# 按时间排序后的照片: [('照片D', 20181112), ('照片B', 20191225), ('照片A', 20200101), ('照片C', 20200315)]
运动员比赛成绩排序
在一次田径比赛中,多名运动员在不同项目上有各自的成绩。编写一个程序,使用快速排序按成绩对运动员进行排序,以便快速了解谁是各项比赛的领跑者。
athletes = [("运动员A", 9.58), ("运动员B", 10.24), ("运动员C", 9.86), ("运动员D", 9.93)]
quick_sort_athletes(athletes, 0, len(athletes)-1)
print("按成绩排序后的运动员:", athletes)
# 按成绩排序后的运动员: [('运动员A', 9.58), ('运动员C', 9.86), ('运动员D', 9.93), ('运动员B', 10.24)]
Powered by Waline v3.1.3