设有一个表头指针为h的单链表,试设计一个算法,通过遍历一趟链表,将链表中所有结点的链接方向
已知带表头结点的非空单链表L,指针P指向L链表中的一个结点(非首结点、非尾结点),试从下列提供的答案中选择合适的语句序列。
a)P=P->next;
b)P->next=P;
c)P->next=P->next->next;
d)P=P->next->next;
e)while(P!=NULL)P=P->next;
f)while(Q->next!=NULL){P=Q;Q=Q->next;}
g)while(P->next!=Q)P=P->next;
h)while(P->next->next!=Q)p=p->next;
i)while(P->next->next!=NULL)P=P->next;
j)Q=P;
k)Q=P->next;
I)P=L;
m)L=L->next;
n)free(Q);
设有一头指针为L的带有表头结点的非循环双向链表,其每个结点中除有pred(前驱指针)、data(数据)和next(后继指针)域外,还有一个访问频度域freq。在链表被起用前,其值均初始化为零。每当在链表中进行一次Locate(L,x)运算时,令元素值为x的结点中freq域的值增1,并使此链表中结点保持按访问频度非增(递减)的顺序排列,同时最近访问的结点排在频度相同的结点的最后,以便使频繁访问的结点总是靠近表头。试编写符合上述要求的Locate(L,x)运算的算法,该运算为函数过程,返回找到结点的地址,类型
已知一个有序单链表(从小到大排列),表头指针为head,编写一个函数向该单链表中插入一个元素为x的节点,使插入后该单链表仍有序。
设有一线性表e=(e0,e1,e2,…,en-1),其逆线性表定义为e=(en-1,…,e2,e1,e0)。请设计一个算法,将用带头结点和不带头结点的单链表两种方法表示的线性表置逆,要求逆线性表仍占用原线性表的空间。