单项选择题
1.数据结构是 ( )
(A)一种数据类型
(B)数据的存储结构
(C)一组性质相同的数据元素的集合
(D)相互之间存在一种或多种特定关系的数据元素的集合
【正确答案】D
2.算法分析的目的是 ( )
(A)辨别数据结构的合理性
(B)评价算法的效率
(C)研究算法中输入与输出的关系
(D)鉴别算法的可读性
【正确答案】B
3.在线性表的下列运算中,不改变数据元素之间结构关系的运算是 ( )
(A)插入
(B)删除
(C)排序
(D)定位
【正确答案】D
4.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( )
(A)3,2,6,1,4,5
(B)3,4,2,1,6,5
(C)1,2,5,3,4,6
(D)5,6,4,2,3,1
【正确答案】B
5.设串s1="Data Structures、with Java",s2="it",则子串定位函数index(s1,s2)的值为 ( )
(A)15
(B)16
(C)17
(D)18
【正确答案】C
6.二维数组A[8][9]按行优先顺序存储,若数组 ……此处隐藏7676个字…… t node*next }LinkNode,*LinkList; 编写算法,从有序表A中删除所有和有序表B中元素相同的结点。
【正确答案】参考答案一: void f34(LinkList ha,LinkList hb) { //hb和hb分剐为存放A和B有序链表的头指针 LinkList p,q,r; p=ha; q=hb—>next; while(p—>next&&q){ if(p—>next—>data<q->data) p=p—>next; else{ if(p—>next—>data==q—>data){ r=p—>next; p—>next=r—>next; free(r); } //从A表删除相同的元素结点 q=q—>next; } } } 参考答案二: void f34(LinkList ha,LinkList hb) { //hb和hb分别为存放A和B有序链表的头指针 LinkList p,q,r; r=ha;p=ha—>next; q=hb—>next; while(p&&q){ if(p—>data<q—>data){ r=p;p=p->next; }else{ if(p—>data==q—>data){ r—>next=p—>next; free(p); p=r—>next; } //从A表删除相同的元素结点 q=q—>next } } }