选择题 共15道
判断题 共10道
编程题 共2道
在面向对象编程中,类是一种重要的概念。下面关于类的描述中,不正确的是( )。
哈夫曼编码是一种用于数据压缩的算法。以下关于哈夫曼编码的描述中,不正确的是( )。
以下代码实现了树的哪种遍历方式?
以下关于完全二叉树的代码描述,正确的是( )。
以下代码实现了二叉排序树的哪种操作?
给定字符集 {A, B, C, D} 的出现频率分别为 {5, 1, 6, 2} ,则正确的哈夫曼编码是( )。
关于动态规划的描述,正确的是( )。
以下代码中,类的构造函数被调用了( )次。
题 以下代码中function1()实现了循环队列的哪种操作?
以下代码实现了二叉树的深度优先搜索(DFS),并统计了叶子节点的数量。横线上应填写( )。
以下代码实现了二叉树的广度优先搜索(BFS),并查找特定值的节点。横线上应填写( )。
以下代码用于生成 位格雷编码。横线上应填写( )。
以下代码实现了0/1背包问题的动态规划解法。假设物品重量为 weights[] ,价值为 values[] ,背包容量为 W ,横线上应填写( )。
以下代码用于检查字符串中的括号是否匹配,横线上应填写( )。
def is_balanced(s):
stack = []
for c in s:
if c in '([{':
stack.append(c)
else:
if not stack:
return False
top = stack.pop()
if (c == ')' and top !='(') or \
(c == ']' and top != '[') or \
(c == '}' and top != '{'):
给定一个二叉排序树(BST),其中节点的值均为正整数。以下关于BST的说法中,错误的是:
哈夫曼树在构造过程中,每次合并权值最小的两个节点,最终生成的树带权路径和最小。
格雷编码的相邻两个编码之间必须有多位不同,以避免数据传输错误。
在树的深度优先搜索(DFS)中,使用队列作为辅助数据结构以实现“先进后出”的访问顺序。
以下代码实现的是二叉树的中序遍历:
python可以直接定义多个构造函数,但默认无参数的构造函数只能有一个。
二叉排序树(BST)中,若某节点的左子树为空,则该节点一定是树中的最小值节点。
在动态规划解决一维硬币找零问题时,若硬币面额为 [1, 3, 4] ,目标金额为 6 ,则最少需要 2 枚硬币(3+3)。
面向对象编程中,封装是指将数据和行为绑定在一起,并对外隐藏实现细节。
以下代码创建的树是一棵完全二叉树:
栈和队列均可以用双向链表实现,插入和删除操作的时间复杂度为 O(1)