更多“【论述题】假设有两个按元素值非递减次序排列的线性表,均以单链…”相关的问题
第1题
1.假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,请编写算法将A表和B表归并成一个按元素值递减有序(即非递增有序,允许表中含有值相同的元素)排列的线性表C,并要求利用原表(即A表和B表)的结点空间构造C表。 //将合并逆置后的结果放在C表中,并删除B表 StatusListMergeOppose_L(LinkList &A,LinkList &B,LinkList &C) { LinkList pa,pb,qa,qb; pa=A; pb=B; qa=pa; //保存pa的前驱指针 qb=pb; //保存pb的前驱指针 pa=pa->next; pb=pb->next; A->next=NULL; C=A; while(pa&&pb){ if(pa->data<pb->data){ qa=pa; pa=pa->next; qa->next=A->next; //将当前最小结点
A.qa->next=A->next
B.qb->next=A->next
C.qa->next=A;
D.qb->next=A;
点击查看答案
第2题
在某线性表最常用的操作是在尾元素之后插入一个元素和删除第一个元素。故采用_______ 存储方式最节省时间。
A.单链表
B.仅有头节点指针的循环单链表
C.双链表
D.仅有尾指针的循环单链表
点击查看答案
第3题
试设计一个结点数据类型为整型的带表头结点的有序单链表,然后设计一个算法,该算法将这个有序单链表划分成两个单链表,使得第一个单链表中包含原单链表中所有数值为奇数的结点,第二个单链表中包含原单链表中所有数值为偶数的结点,且两个单链表中结点的相对排列顺序与原单链表中相同。 【要求】要求使用原单链表的空间,表头结点可以另辟空间。 【提示】请先在自己的稿纸上作答,然后将全部答题过程及所得结果拍照,以图片形式作为附件上传。请确保照片中的字迹足够清晰、解答过程完整。
点击查看答案
第4题
若线性表最常用的运算是存取第i个元素及其前驱的值,则采用()存储方式最节省时间。
点击查看答案
第5题
某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。
A.仅有尾指针的单循环链表
B.非循环的单链表
C.非循环的双链表
D.仅有头指针的单循环链表
点击查看答案
第6题
某一元多项式采用带头结点的单链表存储,编写算法求其导数。函数声明:void Derivative(PolyNode *PL),参数为一元多项式的头指针,该多项式按照幂次递增的次序排列,结果仍为PL所指的链表。
点击查看答案
第7题
若最常用的操作是读取线性表中某个位置元素的值,则采用()存储方式最节省时间
A.顺序表
B.带尾指针的单链表
C.带尾指针的单循环链表
D.单链表
点击查看答案
第8题
当元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用()存储结构。
A.顺序表
B.静态单链表
C.双向循环链表
D.单链表
E.循环单链表
F.双向链表
G.静态循环单链表
点击查看答案
第9题
以十字链表存储稀疏矩阵时,对元素A[i][j]赋值一个非零值,一定会在2个单链表中进行增加结点的操作。
点击查看答案
第10题
若线性表中最常用的操作是存取第i个元素及其前驱和后继元素的值,为了节省时间应采用的存储方式()
点击查看答案