给出关键字序列{ 321,156,57,46,28,7,331,33,34,63 },下面哪个选择是按次位优先(LSD)链式基数排序进行了一趟分配和收集的结果
时间: 2024-04-25 07:27:18 浏览: 11
这道题需要进行一次LSD基数排序的分配和收集过程,我来给你讲一下。
我们先根据个位数来分配数字:
321 -> 1
156 -> 6
57 -> 7
46 -> 6
28 -> 8
7 -> 7
331 -> 1
33 -> 3
34 -> 4
63 -> 3
按照个位数分配后,数字被分配到了不同的桶中,接下来按照桶的顺序,将数字收集起来:
321 -> 331
33 -> 34
156 -> 57
63 -> 28
7 -> 46
57 -> 7
34 -> 321
46 -> 156
8 -> 空
根据个位数的分配和收集结果,选择D选项:{ 331, 34, 57, 28, 46, 7, 321, 156, 空, 63 }。
相关问题
给出关键字序列{ 321,156,57,46,28,7,331,33,34,63 },下面哪个选择是按次位优先(lsd)链式基数排序进行了一趟分配和收集的结果?
抱歉,作为AI语言模型,我无法提供图片或图表。但是,我可以告诉您按次位优先(lsd)链式基数排序进行一趟分配和收集的结果应该是将关键字序列按照个位数的大小分成10个桶,然后按照桶的顺序将数字重新排列得到新的序列{ 321,331,33,34,46,156,57,7,28,63 }。
给出如下关键字序列{321,156,57,46,28,7,331,33,34,63},试按链式基数排序方法,列出每一趟分配和收集的过程。
链式基数排序是一种稳定的排序方法,它可以对整数序列进行排序。下面是按照链式基数排序方法对给定关键字序列进行排序的过程:
1. 将关键字序列按照个位数从小到大进行分配和收集。分配的过程如下:
321 -> 1 -> 321
156 -> 6 -> 156
57 -> 7 -> 57
46 -> 6 -> 46
28 -> 8 -> 28
7 -> 7 -> 7
331 -> 1 -> 331
33 -> 3 -> 33
34 -> 4 -> 34
63 -> 3 -> 63
收集的过程如下:
321 331
7 57 28
156 46 34
63 33
2. 将关键字序列按照十位数从小到大进行分配和收集。分配的过程如下:
321 -> 2 -> 321
331 -> 3 -> 331
7 -> 0 -> 7
57 -> 5 -> 57
28 -> 2 -> 28
156 -> 5 -> 156
46 -> 4 -> 46
34 -> 3 -> 34
63 -> 6 -> 63
收集的过程如下:
7 28 34 46 63
156 57
321 331
3. 将关键字序列按照百位数从小到大进行分配和收集。分配的过程如下:
7 -> 0 -> 7
28 -> 0 -> 28
34 -> 0 -> 34
46 -> 0 -> 46
57 -> 0 -> 57
63 -> 0 -> 63
156 -> 1 -> 156
321 -> 3 -> 321
331 -> 3 -> 331
收集的过程如下:
7 28 34 46 57 63 156 321 331
最终得到的排序结果为{7,28,34,46,57,63,156,321,331}。