风云小站|Connecting Lives With Infinite New Discoveries » 求助专区 » 数据结构题求解

数据结构题求解

a1630016900 资深会员
楼主 2007-11-08 18:23
私信 引用 编辑

数据结构题求解

这个题我同学说一点思路也没有,而我对这个又非常陌生,只好发到这里让大家帮忙做做了。
在这里先谢谢各位了  数据结构题


有一种排序方法叫计数排序,其基本思想是:
设待排序元素的个数为n,待排序元素放在数组R[1..n]中(0号单元不用),关键字为R[K].key;关键字的类型是整型,最大值是MAX,最小值是MIN;设:m=max-min+1;设置三个辅助数组 1)count[0..m-1];  2)locate[0..m-1];  3)D[1..n];其解释如下:
count[0..m-1]:该数组的数组元素  count[k](0≤k≤m-1),初值为关键字是k+MIN的第一个元素在排好序后的正确位置。在算法的执行过程中,表示下一次找到的关键字值为k+MIN的元素在排好序后的正确位置。
D[0..n]:该数组为和R[0..n]同类型的数组,存放排好序的中间结果。
  题目要求写出完成下列任务各程序段(从小到大排序)
○1 初始化数组count
○2 扫描待排数组R一遍,使count有正确值
○3 根据count值,求locate的值
○4 根据locate的值,扫描R一遍,将R中的元素放在D中的正确位置上,并修正locate的值
○5 将已有序的D中的元素,放回R中,使R中元素有序
○6 设R中的关键字如下表所示,给出执行完第○1○2○3步后,数组count和数组locate的值

R    1    2    3    4    5    6    7    8    9    10    11    12
.keyt    4    2    -2    0    4    -2    5    0    5    2    7    2

kuangtu 资深会员
#1 2007-11-11 22:49
私信 引用 编辑

这个我也不会,帮不上你啦
能冲刷一切的除了眼泪,就是时间,以时间来推移感情,时间越长,冲突越淡,仿佛不断稀释的茶。