652aad4bly1g4gjxj3pr8j20u0140npe.jpg

Hi.

Welcome to my blog. This is Shinainai . I am a programmer . I live in California.I love art! I love STEM! Hope you have a nice stay!

比格犬-提桶跑路 桶🪣排序 时间复杂度O(n+k)

比格犬-提桶跑路 桶🪣排序 时间复杂度O(n+k)

桶排序🪣(ChatGPT请辅助)

给小狗分配学号 按照学号排列 最后🐶提桶跑路

(Bucket Sort)

假设:

  • n = 比格犬数量 / 数组元素数量

  • k = 桶的数量

1. 分桶

把每个整数放进对应的桶

2. 对每个桶内部排序


核心优势就是先把数据分散到不同的桶里,减少每次比较的范围

如果你的例子是整数体重/整数成绩,范围比较小,其实还可以进一步讲一个非常漂亮的算法:计数排序 Counting Sort,它甚至可以做到 O(n+k),而且 C 语言实现比二维 buckets 更简单

后话:

有多少桶,每个桶里几只小狗

决定哪只幸运小狗能提到桶🪣,先到先得哦!

图 DFS深度优先搜索与BFS广度优先搜索

图 DFS深度优先搜索与BFS广度优先搜索

比格犬-选择排序

比格犬-选择排序