在单链表中,存储每个结点需要有两个域,一个是数据域,另一个是指针域,它指向该结点的()。
A.直接前趋
B.直接后继
C.开始结点
D.终端结点
A.直接前趋
B.直接后继
C.开始结点
D.终端结点
第5题
A.一个结点的数据域用于存放线性表的一个数据元素
B.一个结点的指针域用于指向下一个数据元素的结点
C.单链表必须带有头结点
D.单链表中的所有结点可以连续存放,也可以不连续存放
第6题
为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是指向结点的指针域)。请填空。
struct link { char data;【 】;} node;
第7题
假设在算法描述语言中引入指针的二元运算“异或”,若a和b为指针,则的运算结果仍为原指针类型,且
则可利用一个指针域来实现双向链表L。链表L中的每个结点只含两个域:data域和LRPtr域,其中L RPtr域存放该结点的左邻与右邻结点指针(不存在时为NULL) 的异或。若设指针L.Left指向链表中的最左结点,L.Right指向链表中的最右结点, 则可实现从左向右或从右向左遍历此双向链表的操作。试写一算法按任一方向依次输出链表中各元素的值。
第8题
已知head指向一个带头结点的单向链表,链表中每个结点包含数据域(data)和指针域(next),数据域为整型。以下函数求出链表中所有链结点数据域的和值,作为函数值返回。请在下划线内填入正确内容。 { int data;struct link*next; } main() { struct link*head; ┆ sum(head); ┆} sum(【 】); { struct link*p;int s=0; p=head->next; while(p){s+=p->data;p=p->next;} return(s);}
第10题
A.p=q->nextp->next=q->next,交换p、q所指结点的数据域的值
B.p=q->next.q->next=p.交换p、q所指结点的数据域的值
C.p=q->next交换p、q所指结点的数据域的值q->next=p->next
D.q->next=q->next->next,q->next=q
第11题