求助:高手指点
1、设有一个双链表, 每个结点中除有 PRIOR,NEXT 及 DATA(可设为
正整数) 三个域之外,还有一个专门记录访问该结点次数的数据域 FREQ
,其值在初始化时为零。每当在链表中进行一次 SEACH〔L,KEY〕 时,则数据域 DATA 之值等于 KEY 的结点,其 FREQ 域之值将加一。
并使该双链表中结点按 FREQ 之值的递减顺序排列,FREQ 值越大的结点
越靠近散双链表的头结点。 请编写符合上述要求的 SEACH(L,KEY) 程
序。
2、请写出计算两个以 单链接表表示的多项式相乘的程序。
3、在计算 机 上先输入一串正整数的序列。请编写一个程序,首先用链接表
存储该序列。然后执行删除操作,即先从链表中找出最小的结点,删除它
。然后再在剩余的链表中,找出最小的结点,再删除之。直至表空为止。
4、已知两个单链表 A 和 B 分别表示两个集合,其元素递增排列。请编写程
序求集合 A 和 B 的交集 C = A?B,要求单链表C按其元素递增排列,并
利用原表(即表A和表B)的结点空间存放表C。
*5、将具有头结点的单链表的所有指针全部进行倒向。要求使用的额外空间
只能为 O(1),时间代价只能为O(n),其中 n 为结点个数。
*6、假设有两个按元素值非递减有序排列的线性表A和B,均以单链表作存储
结构,请编写程序将表A和表B归并成一个按元素非递减有序(允许值相
同)排列的线性表C,并要求利用原表(即表A和表B)的结点空间存放表
C。