全部来自 AI 原创生成并经逐题审校的题目,带 精品 标记的为 AI 复审通过。整卷生成请去组卷。
采用除留余数法构造哈希函数 H(key)=key mod 7,采用线性探测处理冲突,按顺序插入关键字 12、19、26。关键字 26 最终存放的地址是(地址从 0 开始计)。 A. 0 B. 5 C. 6 D. 1
登录后查看答案
判断:若一个连通带权无向图存在多棵不同的最小生成树,则这些生成树的边权总和不一定相同。
无向连通带权图 G 的顶点集为 {A,B,C,D,E},边及权值为 AB:1、DE:1、AC:2、BC:2、CD:3、BD:3。用 Kruskal 算法求 G 的最小生成树,其总权值为多少? A. 6 B. 7 C. 8 D. 9
在一棵二叉树中,度为 2 的结点有 15 个,则该二叉树的叶结点个数为多少? A. 14 B. 15 C. 16 D. 17
判断:设有4个权值分别为3、5、7、9的叶结点构造哈夫曼树,则该树共有7个结点,且任一叶结点的哈夫曼编码都不是另一叶结点编码的前缀。
循环队列采用牺牲一个存储单元法区分队满与队空。设数组容量为 MaxSize,front 指向队头元素,rear 指向队尾元素的下一个位置。请写出:队空条件为 ___;队满条件为 ___。
元素 A、B、C、D 按此顺序依次入栈,且每个元素仅入栈、出栈一次。出栈序列 C、B、A、D 是合法的。判断:正确或错误。
单链表中,若 p 原本没有后继结点,要在 p 后插入新结点 s,依次执行 p->next=s 和 s->next=p->next,最终仍得到无环且结点次序为 p、s 的链表。
单链表中结点依次为 B→C→D,指针 p 指向 B,s 指向新结点 X。要先在 p 后插入 s,再删除原结点 C(设 q 为辅助指针),使结果为 B→X→D,且不丢失其他结点,应执行哪组语句? A. s->next=p->next; p->next=s; q=s->next; s->next=q->next; free(q); B. p->next=s; s->next=p->next; q=s->next; s->next=q->next; free(q); C. s->next=p->next; p->next=s; q=s->next; free(q); s->next=q->next; D. s->next=p->next; p->next=s; q=p->next; p->next=q->next; free(q);
单链表中,若 p 指向的结点有后继结点,执行 q=p->next; p->next=q->next; free(q); 可以正确删除 p 的后继结点。
某顺序表当前含有 n 个元素,现等概率地从所有合法位序中选一个位置插入新元素。若插入时平均需要向后移动 9 个元素,则该顺序表原有元素个数为____。
在单链表中,指针 p 指向某结点,该结点存在后继,指针 s 指向新结点。现要在 p 结点之后插入 s 结点,若先执行 s->next=p->next;,则随后应执行的语句是( ) A. p->next=s; B. s=p->next; C. p=s->next; D. free(p->next);
判断:执行以下程序后,p.label 为“定稿”,q.label 仍为“终稿”。 class Profile: def __init__(self, label): self.label = label def rename(self, label): self.label = label p = Profile("初稿") q = Profile("终稿") p.rename("定稿")
有如下 Python 代码: class Student: def __init__(self, sid): self.sid = sid def get(self): return '学号:' + self.sid s = Student('A07') s.sid = 'B12' print(s.get()) 程序运行后的输出是: A. 学号:A07 B. 学号:B12 C. 学号:sid D. 程序报错,因为 sid 被修改后不能再访问
判断:在 Python 中,类的 __init__ 方法负责初始化新创建的实例;只要该方法完成属性初始化,就必须显式执行 return self,实例才能正常创建。
有如下 Python 代码: class Song: def __init__(self, title): self.title = title def play(self): print(self.title) s = Song("夜曲") s.title = "晴天" s.play() 程序运行的输出是( ) A. 夜曲 B. 晴天 C. title D. 程序报错
阅读代码,选择列表 `ordered` 的结果。 ```python def digit_sum(n): if n < 10: return n return n % 10 + digit_sum(n // 10) codes = [42, 15, 23, 8, 31] ordered = sorted(codes, key=lambda n: (digit_sum(n), -n)) ``` A. `[31, 23, 42, 15, 8]` B. `[31, 23, 15, 42, 8]` C. `[8, 42, 15, 23, 31]` D. `[31, 42, 15, 23, 8]`
阅读代码,填写空白处,使程序最后一行通过实例 n 调用实例方法并输出该实例保存的文本。 class Note: def __init__(self, text): self.text = text def reveal(self): return self.text n = Note("会议记录") print(____)
已执行 `import random, math`。程序先运行 `k = random.randint(2, 8)`,随后运行 `n = math.ceil(math.sqrt(k))`。若程序运行时 `k` 恰为 8,则 `n = ____`;`randint(2, 8)` 可能取到 8,是因为端点 ____(填“包含”或“不包含”)。
有如下 Python 程序: class Student: def __init__(self, name, score): self.name = name self.score = score def show(self): print(self.name) s = Student('李明', 92) s.show() 程序中定义 Student 类时,____ 方法是构造方法,用于在创建对象时初始化实例属性;调用 s.show() 时,self 参数指的是____(填:类 Student / 实例 s),不需要手动传参。