测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

PROBLEM SET

题库

按难度与知识点筛选,找到适合的练习题。

共 67434 题
重置

题目列表

共 67434 题
A21091 下面代码实现了欧拉(线性)筛,横线处应填写( )。def euler_sieve_for(n): if n < 2: return [] is_composite = [False] * (n + 1) primes = [] for i in range(2, n + 1): if not is_composite[i]: primes.append(i) __________________… Python-L5 -- 困难 -- A21092 对如下代码实现的欧几里得算法(辗转相除法),调用gcd(48,18)得到的调用序列为( )。def gcd(a, b): if b == 0: return a else: return gcd(b, a % b) Python-L5 -- 困难 -- A21093 下面函数删除单向链表中 val==x的节点,并且使用哑结点统一对头结点和中间节点的删除操作。横线处应填( )。class Node: def __init__(self, val): self.val = val self.next = None def eraseAll(head, x): dummy = Node(0) dummy.next = head cur = dummy while … Python-L5 -- 困难 -- A21094 双向循环链表中要在结点 p 之前插⼊新结点 s(均非空),以下操作正确的是( )。 Python-L5 -- 困难 -- A21095 关于Python 实现的单链表、双链表和循环链表,下列说法正确的是( )。 Python-L5 -- 困难 -- A21099 以下代码实现了0-1背包问题的一维动态规划解法,内层循环采用经典的逆序遍历⽅式。若将内层循环改为正序遍历(即 for j in range(w[i], W + 1): ),仍能得到正确答案。( )def knapsack_01(): W = 5 w = [2, 3, 4] v = [10, 1, 1] n = 3 dp = * (W + 1) for i in range(n): for j i… Python-L6 -- 困难 -- A21100 设二叉树共有n个结点,函数 preorderTraversal 的时间复杂度为O(n),空间复杂度为O(n)。( )class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None def preorder(root, res): if root is None: return res.a… Python-L6 -- 困难 -- A21102 在Python 中使用列表存储按层序遍历的完全二叉树时,若根节点存储在 tree[0] ,则对于任意⾮空节点tree[i] ,其右孩子(如果存在)必然位于 tree[2 * i + 2] 。( ) Python-L6 -- 困难 -- A21105 对如下结构的树,执行 travel 函数,输出结果是 1 2 3 4 5 。( ) 1 / \ 2 3 / \ 4 5class Node: def __init__(self, v): self.val = v self.left = None self.right = None def travel(root): if not root: return stack = [] stack.ap… Python-L6 -- 困难 -- A21106 Python 中的继承支持单继承和多继承,但子类无法直接访问父类的私有成员。( ) Python-L6 -- 困难 -- A21107 下面定义了一个表示二维坐标点的类 Point , 并提供了一个带参数的构造函数,但第② 行 会调用编译器⾃动生成的默认构造函数,将 b.x 和 b.y 被初始化为 0.0,程序可以正常编译运行。( )class Point: def __init__(self, px, py): self.x = px self.y = py def print(self): print(f"({self.x}… Python-L6 -- 困难 -- A21108 元宵节晚上,小朋友沿着一条发光石板路前进,每次可以向前走 1 块或 2 块石板。若 dp[i] = dp[i - 1]+ dp[i - 2] ,下面关于 dp[i] 的含义最合适的是( )。 Python-L6 -- 困难 -- A21109 小朋友们去邻里拜年,每个家里有不同数量的糖果。规则是:不能连续进入两个相邻的房子(即不能同时取相邻两家的糖果)。目标是拿到最多糖果。以下是代码实现,请补全横线。def visit(nums): if not nums: return 0 size = len(nums) if size == 1: return nums dp = * size dp = nums dp = max(nums, … Python-L6 -- 困难 -- A21111 给定一棵二叉树,采用⼴度优先搜索(BFS) 算法,返回右视图所有节点的值。其中右视图定义为:二叉树的右视图是从树的右侧看过去时可见的节点集合,即右视图中的每个节点都是某一层中最右侧的节点。class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None def rightSideView(… Python-L6 -- 困难 -- A21114 有 6 个字符,它们出现的次数分别为: {2, 3, 3, 4, 6, 8} ,现在用哈夫曼编码为这些字符编码,最⼩加权路径长度WPL(每个字符的出现次数 它的编码长度,再把每个字符结果加起来)的值为( )。 Python-L6 -- 困难 -- A21115 下列关于树的遍历的说法中,正确的一项是( )。 Python-L6 -- 困难 -- A21117 在二叉搜索树(BST)中,若中序遍历的序列为{1, 2, 3, 4, 5},且先序遍历的第一个序列元素为 3,则下列说法正确的是( )。 Python-L6 -- 困难 -- A21119 游乐园的过山车每次限坐 4 人,用循环队列管理排队(容量 MAX=5 ,空一格判满)。下面代码执行后,循环队列是否已满? rear 的值是多少?( )MAX = 5 queue = [None] * MAX front = 0 rear = 0 def enqueue(x): global rear, queue queue[rear] = x rear = (rear + 1) % MAX d… Python-L6 -- 困难 -- A21120 下面的代码在主程序if__name__=="main__":中有没有一行会导致运行错误,如果有请找出错误行( ) class Pet: def __init__(self, n, a): self._name = n self._age = a def get_name(self): return self._name def birthday(self): self._age += 1 if … Python-L6 -- 困难 -- A21121 下列代码中, s1.draw() 和 s2.draw()能正确运⾏并输出不同结果的主要原因是( )。class Shape: def draw(self): print("绘制图形") class Circle(Shape): def draw(self): print("绘制圆形") class Rectangle(Shape): def draw(self): print("绘制矩形") i… Python-L6 -- 困难 --