互联网IT公司面试手册
第一部分
1. 栈和队列的共同特点是什么? 答案:只允许在端点处插入和删除元素。 2. 栈通常采用的两种存储结构是什么? 答案:线性存储结构和链表存储结构。 3.下列关于栈的叙述正确的是(D) A. 栈是非线性结构 B. 栈是一种树状结构 C. 栈具有先进先出的特征 D. 栈有后进先出的特征 4. 链表不具有的特点是(B) A. 不必事先估计存储空间 B. 可随机访问任一元素 C. 插入删除不需要移动元素 D. 所需空间与线性表长度成正比 5. 用链表表示线性表的优点是什么? 答案:便于插入和删除操作。 6. 在单链表中,增加头结点的目的是? 答案:方便运算的实现。 7. 循环链表的主要优点是什么?
答案:从表中任一结点出发都能访问到整个链表。
8. 线性表L=(a1,a2,a3,……ai,……an),下列说法正确的是(D)
A. 每个元素都有一个直接前件和直接后件 B. 线性表中至少要有一个元素
C. 表中诸元素的排列顺序必须是由小到大或由大到小
D. 除第一个和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件 9. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址(D) A. 必须是连续的 B. 部分地址必须是连续的 C. 一定是不连续的 D. 连续不连续都可以
10. 线性表的顺序存储结构和线性表的链式存储结构分别是? 答案:随机存取的存储结构和顺序存取的存储结构。 11. 树是结点的集合,它的根结点数目是多少? 答案:有且只有1
12. 在深度为5的满二叉树中,叶子结点的个数为? 答案:16
13. 具有3个结点的二叉树有多少种形态? 答案:5种形态。
14. 设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为多少? 答案:13
15. 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是? 答案:cedba
16. 已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为? 答案:DGEBHFCA
17. 若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的结点访问顺序是? 答案:gdbehfca 第二部分
1. 在计算机中,算法是指什么? 答案:解题方案的准确而完整的描述。
2. 在下列选项中,哪个不是一个算法一般应该具有的基本特征?
说明:算法的四个基本特征是:可行性、确定性、有穷性和拥有足够的情报。 答案:无穷性。
3. 算法一般都可以用哪几种控制结构组合而成? 答案:顺序、选择、循环。 4. 算法的时间复杂度是指?
答案:算法执行过程中所需要的基本运算次数。 5. 算法的空间复杂度是指?
答案:执行过程中所需要的存储空间。 6. 算法分析的目的是?
答案:分析算法的效率以求改进。 7. 下列叙述正确的是(C)
A.算法的执行效率与数据的存储结构无关
B.算法的空间复杂度是指算法程序中指令(或语句)的条数 C.算法的有穷性是指算法必须能在执行有限个步骤之后终止 D.算法的时间复杂度是指执行算法程序所需要的时间 8. 数据结构作为计算机的一门学科,主要研究什么?
答案:主要研究数据的逻辑结构、对各种数据结构进行的运算,以及数据的存储结构。
9. 数据结构中与所使用的计算机无关的是数据的(C) A.存储结构 B.物理结构 C.逻辑结构 D.物理和存储结构 10. 下列叙述中,错误的是(B)
A.数据的存储结构与数据处理的效率密切相关 B.数据的存储结构与数据处理的效率无关
C.数据的存储结构在计算机中所占的空间不一定是连续的 D.一种数据的逻辑结构可以有多种存储结构 11. 数据的存储结构是指什么?
答案:数据的逻辑结构在计算机中的表示。 12. 数据的逻辑结构是指?
答案:反映数据元素之间逻辑关系的数据结构。
13. 根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分为? 答案:线性结构和非线性结构。 14. 下列数据结构具有记忆功能的是(C) A.队列 B.循环队列 C.栈 D.顺序表
15. 下列数据结构中,按先进后出原则组织数据的是(B) A.线性链表 B.栈 C.循环链表 D.顺序表
16. 递归算法一般需要利用什么实现? 答案:队列
17. 下列关于栈的叙述中正确的是(D) A.在栈中只能插入数据 B.在栈中只能删除数据 C.栈是先进先出的线性表 D.栈是先进后出的线性表
18. 由两个栈共享一个存储空间的好处是? 答案:节省存储空间,降低上溢发生的机率。 19. 下列关于队列的叙述中正确的是(C) A.在队列中只能插入数据 B.在队列中只能删除数据 C.队列是先进先出的线性表 D.队列是先进后出的线性表 20. 下列叙述中,正确的是(D)
A.线性链表中的各元素在存储空间中的位置必须是连续的 B.线性链表中的表头元素一定存储在其他元素的前面
C.线性链表中的各元素在存储空间中的位置不一定是连续的,但表头元素一定存储在其他元素的前面
D.线性链表中的各元素在存储空间中的位置不一定是连续的,且各元素的存储顺序也是任意的
21. 下列叙述中正确的是(A) A.线性表是线性结构 B.栈与队列是非线性结构 C.线性链表是非线性结构