PROBLEM SET
题库
按难度与知识点筛选,找到适合的练习题。
题目列表
共 67434 题
A22258
0/1 背包(每件物品最多选一次)问题通常可用一维动态规划求解,核⼼代码如下。遍历的⽅向⽆所谓,则下面说法正确的是( )。def zero_one_knapsack(items, W): dp = [0] * (W + 1) for w, v in items: for j in range(W, w - 1, -1): dp[j] = max(dp[j], dp[j - w] + v) ret…
Python-L6
困难
--
A22259
在二叉排序树(Binary Search Tree, BST)中,假设节点值互不相同。给定如下搜索函数,以下说法一定正确的是( )。class Node: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right def find(root, x): w…
Python-L6
困难
--
A22260
给定一棵普通二叉树(节点值没有⼤⼩规律),下面代码判断是否存在值为 x 的结点,则横线处应填入( )。class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None from collections import deque def bfs_find(root, x): if not r…
Python-L6
困难
--
A22261
下列代码实现了树的深度优先遍历,则横线处应填⼊( )。class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None def dfs1(root): if not root: return temp = [] temp.append(root) while temp: node = te…
Python-L6
困难
--
A22262
以下函数实现了二叉排序树(BST)的( )操作。class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right def op(root, x): if not root: return TreeNode(x) if x < ro…
Python-L6
困难
--
A22263
以下关于哈夫曼编码的说法,正确的是( )。
Python-L6
困难
--
A22264
下面代码实现了哈夫曼编码,则横线处应填写的代码是( )。class Symbol: def __init__(self, ch='', freq=0, code=''): self.ch = ch self.freq = freq self.code = code class Node: def __init__(self, w=0, l=-1, r=-1, sym=-1): self.w = …
Python-L6
困难
--
A22265
以下代码实现了二叉树的( )。class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right def traverse(root): if not root: return traverse(root.left) travers…
Python-L6
困难
--
A22266
以下函数check()⽤于判断⼀棵⼆叉树是否为( )。class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right from collections import deque def check(root): if not r…
Python-L6
困难
--
A22267
假设循环队列数组长度为 N ,其中队空判断条件为: front == rear ,队满判断条件为: (rear + 1) % N == front ,出队对应的操作为: front = (front + 1) % N ,⼊队对于的操作为: rear = (rear + 1) %N 。循环队列长度 N = 6 ,初始 front = 1 , rear = 1 ,执⾏操作序列为:⼊队, ⼊队, ⼊队…
Python-L6
困难
--
A22269
执⾏下⾯代码,将输出( )。class Instrument: def play(self): print("乐器在演奏声音") def __del__(self): pass class Piano(Instrument): def play(self): print("钢琴: 叮咚叮咚") class Guitar(Instrument): def play(self): print("吉他…
Python-L6
困难
--
A22270
执⾏如下代码,将输出钢琴:叮咚叮咚和吉他:咚咚当当⽽不是两⾏ 乐器在演奏声音 ,这体现了⾯向对象编程的( )特性。class Instrument: """基类: 乐器""" def __init__(self): pass def play(self): print("乐器在演奏声音") def __del__(self): pass class Piano(Instrument): """子…
Python-L6
困难
--
A22271
在Python的⾯向对象编程中,下列关于“动态绑定(等效于虚函数)”的描述中,错误的是( )。
Python-L6
困难
--
A22274
一个包含V个顶点的连通无向图,其任何一棵⽣成树都恰好包含V-1条边。( )
Python-L7
困难
--
A22275
使用链地址法处理冲突的哈希表,当所有元素都映射到同一个槽位时,查找操作的最坏时间复杂度为O(n),其中n为元素个数。( )
Python-L7
困难
--
A22276
在图像处理或游戏开发中,泛洪(flood fill)算法既可以用BFS实现,也可以用DFS实现。( )
Python-L7
困难
--
A22277
使用邻接矩阵存储一个有V个顶点、E 条边的图,对该图进行一次完整的BFS遍历,时间复杂度为O(V+E) 。( )
Python-L7
困难
--
A22278
在无向图中,所有顶点的度数之和等于边数的两倍。( )
Python-L7
困难
--
A22279
求两个长度为n序列的最长公共子序列(LCS)长度时,可以使用滚动数组将空间复杂度从O(n2)优化到O(n)( )。
Python-L7
困难
--
A22280
选择排序是一种不稳定的排序算法,⽽冒泡排序是一种稳定的排序算法。( )
Python-L7
困难
--