设有一个双向循环链表,每个结点中除有prior,data和 next 三个域外,还增设了一个访问频度域freq在链表被起用之前,频度域 freq的值均初始化为零,而每当对链表进行一次LOCATE (Lx)的操作后,被访问的结点(即元素值等于x的结点)中的频度域freq的值便增1,同时调整链表中结点之间的次序,使其按访问频cA度非递增的次序顺序排列,以便始终保持被频繁访问的结点总是靠近表头结点。试编写符合上述要求的 LOCATE操作的算法。在2.39至2.40题中,稀疏多项式采用的顺序存储结构SqPoly定义为typedcf struct {int coef;int exp;}PolyTerm;typedef struct {PolyTerm *data; /多项式的顺序存储结构int length;}SqPoly;
设有一个双向循环链表,每个结点中除有prior,data和 next 三个域外,还增设了一个访问频度域freq在链表被起用之前,频度域 freq的值均初始化为零,而每当对链表进行一次LOCATE (Lx)的操作后,被访问的结点(即元素值等于x的结点)中的频度域freq的值便增1,同时调整链表中结点之间的次序,使其按访问频cA度非递增的次序顺序排列,以便始终保持被频繁访问的结点总是靠近表头结点。试编写符合上述要求的 LOCATE操作的算法。在2.39至2.40题中,稀疏多项式采用的顺序存储结构SqPoly定义为typedcf struct {int coef;int exp;}PolyTerm;typedef struct {PolyTerm *data; /多项式的顺序存储结构int length;}SqPoly;
1