试卷 2023年12月GESP认证Python等级考试(六级)真题试卷
2023年12月GESP认证Python等级考试(六级)真题试卷
选择题
第 1 题    单选题

通讯卫星在通信⽹络系统中主要起到(   )的作⽤。

A.

信息过滤

B.

信号中继

C.

避免攻击

D.

数据加密

第 2 题    单选题

⼩杨想编写⼀个判断任意输⼊的整数N是否为素数的程序,下⾯哪个⽅法不合适?

A.

埃⽒筛法

B.

线性筛法

C.

⼆分答案

D.

枚举法

第 3 题    单选题

内排序有不同的类别,下⾯哪种排序算法和冒泡排序是同⼀类?

A.

希尔排序

B.

快速排序

C.

堆排序

D.

插⼊排序

第 4 题    单选题
关于Python类和对象的说法,错误的是(  )。
A.

Python中,⼀切皆对象,即便是字⾯量如整数5等也是对象

B.

Python中,可以⾃定义新的类,并实例化为新的对象

C.

Python中,内置函数和⾃定义函数,都是类或者对象

D.

Python中,不可以在⾃定义函数中嵌套定义新的函数

第 5 题    单选题

有关下⾯Python代码的说法,正确的是(   )

A.

17⾏代码执⾏后将报错,因Rect类没有定in运算符

B.

16⾏代码Point对象作为参数,将导致错误

C.

in是成员运算符,不适⽤Rect

D.

Rect类定义__contains__魔术⽅法,因此第17⾏代码能正确执⾏

第 6 题    单选题

有关下⾯Python代码的说法,正确的是(   )

A.

8⾏代码错误,第9⾏正确

B.

9⾏代码错误,第8⾏代码正确

C.

89两⾏代码都正确

D.

4⾏代码可修改objCounter += 1

第 7 题    单选题

有关下⾯Python代码的说法,错误的是(   )

A.

上列Python代码适⽤于构造各种⼆叉树

B.

Root = biTree(biTreeNode(5))构造⼆叉树的根节点

C.

Root = biTree( )可以构造空⼆叉树,此Root对象root属性值None

D.

Root = biTree(biTreeNode( ))可以构造空⼆叉树,此Root对象root属性Node

第 8 题    单选题

基于上题类的定义,有关下⾯Python代码的说法错误的是(     )。

A.

代码Search( )函数如果查找到查找值的节点,则返回该节点的对象

B.

代码Search( )函数先搜索左⼦树,如果搜索不到指定值,则搜索右⼦树

C.

代码Search( )函数采⽤递归⽅式实现⼆叉树节点的搜索

D.

代码Search( )函数采⽤动态规划⽅法实现⼆叉树节点的搜索

第 9 题    单选题

有关下⾯Python代码的说法正确的是(     )。

A.

上述代码构成单向链表

B.

上述代码构成双向链表

C.

上述代码构成循环链表

D.

上述代码构成指针链表

第 10 题    单选题

hello world 使⽤霍夫曼编码(Huffman Coding),最bit(⽐特)为(      )。

A.

4

B.

32

C.

64

D.

88

第 11 题    单选题

下⾯fiboA( )fiboB( )两个函数分别实现斐波那契数列,该数列第1、第2项值为1,其余各项分别 为前两项之和。下⾯有关说法错误的是)。

A.

fiboA( )采⽤递归⽅式实现斐波那契数列

B.

fiboB( )采⽤动态规划算法实现斐波那契数列

C.

N值较⼤时fiboA( )存在⼤量重复计算

D.

fiboA( )代码较短,其执⾏效率较⾼

第 12 题    单选题

有关下⾯Python代码不正确的说法是(     )。

A.

该代码可⽤于求解⼆叉树的深度

B.

代码中函getDepth( )的参root表⽰根节点,⾮根节点不可以作为参数

C.

代码中函getDepth( )采⽤了递归⽅法

D.

代码中函getDepth( )可⽤于求解各种形式的⼆叉树深度,要求该⼆叉树节点⾄少leftright 

第 13 题    单选题

下⾯有关树的存储,错误的是(     

A.

完全⼆叉树可以list存储

B.

⼀般⼆叉树都可以list存储,空⼦树位置可以None表⽰

C.

满⼆叉树可以list存储

D.

树数据结构,都可以list存储

第 14 题    单选题

下⾯有关Pythonin运算符的时间复杂度的说法,错误的是)。

A.

in运算符作⽤dict时,其时间复杂度为O(1)

B.

in运算符作⽤set时,其时间复杂度为O(1)

C.

in运算符作⽤list时,其时间复杂度为O(N)

D.

in运算符作⽤str时,其时间复杂度为O(1)

第 15 题    单选题

下⾯有bool()函数的说法,正确的是)。

A.

如果⾃定义类中没有定义魔术⽅__bool__( ),将不能对该类的对象使bool( )函数

B.

如果⾃定义类中没有定义魔术⽅法__bool__( ),将查找有⽆魔术⽅法__len__( )函数,如果有 __len__( )则按__len__()的值进⾏处理,如果该值为0则返回False,否则True,如果没有__len__(),则返回值为True

C.

bool( )函数如果没有参数,返回值False

D.

表达bool(int)的值False

判断题
第 16 题    判断题

小杨想写一个程序来算出正整数N有多少个因数,经过思考他写出了一个重复没有超过N/2次的循环就能够算 出来了。( )

A.
正确
B.
错误
第 17 题    判断题

同样的整数序列分别保存在单链表和双向链中,这两种链表上的简单冒泡排序的复杂度相同。( )

A.
正确
B.
错误
第 18 题    判断题

在面向对象中,方法(Event)在Python的class中表现为class内定义的函数。( )

A.
正确
B.
错误
第 19 题    判断题

在下面的Python代码被执行将报错,因为newClass没有 __init__( ) 魔术方法。( )

A.
正确
B.
错误
第 20 题    判断题

如果某个Python对象(object)支持下标运算符(方括号运算符),则该对象在所对应class中定义了名为 __getitem__ 的魔术方法。( )

A.
正确
B.
错误
第 21 题    判断题

深度优先搜索(DFS,Depth First Search的简写)属于图算法,其过程是对每一个可能的分支路径深入到不 能再深入为止,而且每个节点只能访问一次。( )

A.
正确
B.
错误
第 22 题    判断题

哈夫曼编码(Huffman Coding)具有唯一性,因此有确定的压缩率。 ( )

A.
正确
B.
错误
第 23 题    判断题

Python虽然不支持指针和引用语法,但变量的本质是数据的引用(reference),因此可以实现各种C/C++数 据结构。在下面Python代码中,由于删除了变量a,因此a所对应的数据也随之删除,故第4行代码被执行时,将报 错。( )

A.
正确
B.
错误
第 24 题    判断题

二叉搜索树查找的平均时间复杂度为 O log(N) 。( )


A.
正确
B.
错误
第 25 题    判断题

二叉搜索树可以是空树(没有任何节点)或者单节点树(只有一个节点),或者多节点。如果是多节点, 则左节点的值小于父节点的值,右节点的值大于父节点的值,由此推理,右节点树的值都大于根节点的值,左节点 树的值都小于根节点的值。( )

A.
正确
B.
错误
编程题
第 26 题    问答题

试题名称:闯关游戏

你来到了⼀个闯关游戏。

 

这个游戏总共有    N   关,每关都有   M   个通道,你需要选择⼀个通道并通往后续关卡。其中,第 i个通道可以让你前   ai   关,也就是说,如果你现在在第  x   关,那么选择第 i 个通道后,你将直接来到第     x+   ai   关(特别地,如果x+   ai >=N,那么你就通关了)。此外,当你顺利离开第   s  关时,你还将获得   bs   分。

 

游戏开始时,你在第  0 关。请问,你通关时最多能获得多少总分?

 

 输入描述

 

第⼀⾏两个整数   N,M  ,分别表⽰关卡数量和每关的通道数量。

 

接下来⼀⾏    M   个⽤单个空格隔开的整数        。保证       

 

接下来⼀⾏    N   个⽤单个空格隔开的整数          。保证    

 

输出描述

 

⼀⾏⼀个整数,表⽰你通关时最多能够获得的分数。

 

特别提醒 

在常规程序中,输⼊、输出时提供提⽰是好习惯。但在本场考试中,由于系统限定,请不要在输⼊、输出中附带任 何提⽰信息。

 

样例输1

6 2 
2 3
1 0 30 100 30 30

样例输1

131

 

3.1.7     样例解1

 

你可以在第  0   关选择第   1  个通道,获得  1   分并来到第  3   关;随后再选择第 0    个通道,获得   100      分并来到第  5   关;最 后任选⼀个通道,都可以获得   30    分并通关。如此,总得分为    1+100+30=131       


样例输2

6 2 
2 3
1 0 30 100 30 -1

样例输2

101

 

样例解2 

请注意,⼀些关卡的得分可能是负数。

第 27 题    问答题

试题名称:⼯作沟通

某公司有 N 名员⼯,编号从 0      N-1  。其中,除了 0  号员⼯是⽼板,其余每名员⼯都有⼀个直接领导。我们假设 编号为 i 的员⼯的直接领导是  fi   

 

该公司有严格的管理制度,每位员⼯只能受到本⼈或本⼈直接领导或间接领导的管理。具体来说,规定员⼯   x  可以 管理员⼯y,当且仅当            x=y,或   x=fy           ,或  x   可以管理 fy     。特别地,0号员⼯⽼板只能⾃我管理,⽆法由其他任何 员⼯管理。

 

现在,有⼀些同事要开展合作,他们希望找到⼀位同事来主持这场合作,这位同事必须能够管理参与合作的所有同 事。如果有多名满⾜这⼀条件的员⼯,他们希望找到编号最⼤的员⼯。你能帮帮他们吗?

 

3.2.2     输入描述

 

第⼀⾏⼀个整数  N    ,表⽰员⼯的数量。

 

第⼆⾏     N-1   个⽤空格隔开的正整数,依次为   

 

第三⾏⼀个整数 Q    ,表⽰共有  Q    场合作需要安排。

 

接下来  Q    ⾏,每⾏描述⼀场合作:开头是⼀个整数   ,表⽰参与本次合作的员⼯数量;接着是 m 个整数,依次表⽰参与本次合作的员⼯编号(保证编号合法且不重复)。

 

保证公司结构合法,即不存在任意⼀名员⼯,其本⼈是⾃⼰的直接或间接领导。

 

输出描述 

输出  Q    ⾏,每⾏⼀个整数,依次为每场合作的主持⼈选。

 

特别提醒

在常规程序中,输⼊、输出时提供提⽰是好习惯。但在本场考试中,由于系统限定,请不要在输⼊、输出中附带任 何提⽰信息。

 

样例输1

5
0 0 2 2 
3
2 3 4
3 2 3 4
2 1 4

样例输1

2 
2 
0


样例解1

对于第⼀场合作,员⼯  3,4 有共同领导2,可以主持合作。 

对于第⼆场合作,员⼯2本人即可以管理所有参与者。

对于第三场合作,只有0号老板才能管理所有员工。

答题卡
选择题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
判断题
编程题
26 27
题目总数:27
总分数:100
时间:90分钟