在一个单链表中,已知q 所指结点是p 所指结点的前驱结点,若在q 和p 之间插入结点s, 则执行( )。 A:q->next=s; s->next=p; B:s->next=p->next;p->next=s; C:p->next=s->n 点我阅读全文
顺序表的插入算法中,当n个空间已满时,可再申请增加分配m 个空间,若申请失败,则说明系统没有( )可分配的存储空间。 A:n+m个 B:m个 C:n+m个连续 D:m个连续 答案: n+m个连续设线性表中有2n个元素,( )在单链表上实现要 点我阅读全文
单链表中,增加一个头结点的目的是为了方便链表运算的实现。( ) A:对 B:错 答案: 对 下面关于串的叙述中,正确的是( )。 A:串是一种特殊的线性表 B:串中元素只能是字母 C:空串就是空白串 D:串的长度必须大于零 答案: 串是一种 点我阅读全文
以下代码段的时间复杂度是( )消除递归不一定需要使用栈,此说法( ) A:对 B:错 答案: 对void fun(int k)栈是实现过程和函数等子程序所必需的一种数据结构。( ) A:错 B:对 答案: 对 点我阅读全文
若线性表最常用的操作是存取第i个元素及其前驱和后继元素的值,为了提高效率,应采用( )的存储方式。 A:双向链表 B:单链表 C:单循环链表 D:顺序表 答案: 顺序表对于顺序表,访问第i个位置的元素和在第i个位置插入一个元素的时间复杂度为 点我阅读全文
算法必须满足有穷性( ) A:错 B:对 答案: 对KMP算法的特点是在模式匹配时指示主串的指针不会变小。( ) A:错 B:对 答案: 对在相同规模n下,复杂度为O(n)的算法在时间上优于复杂度为O(2^n)的算法( ) A:错 B:对 点我阅读全文
链式存储设计时,结点内的存储单元地址( )。 A:不一定连续 B:一定连续 C:一定不连续 D:部分连续,部分不连续 答案: 一定连续设有两个串p 和 q,其中q是p的子串,则求q在p中首次出现位置的算法称为( )。 A:求子串 B:串联接 点我阅读全文
在数据结构中,与所使用的计算机无关的是数据的( )结构。 A:物理与存储 B:逻辑 C:物理 D:存储 答案: 逻辑 两个字符串相等的条件是( )。 A:含有相同的字符集 B:串的长度相等 C:两个串的长度相等且对应位置的字符相同 D:都是 点我阅读全文
s=s+i;输入序列为ABC,可以变为CBA时,经过的栈操作为( ) A:push,push,push,pop,pop.pop B:push,push,pop.pop,push.pop C:push,pop.push,push,p 点我阅读全文