admin 管理员组文章数量: 1086019
2024年5月9日发(作者:xml格式软件)
全国青少年编程能力等级测评试卷
1
Python
编程(四级)及答案
(考试时间
90
分钟,满分
100
分)
一、单项选择题(共
15
题,每题
3
分,共
45
分)
1.
若
A, B, C, D, E
这
5
个元素依次顺序进栈,则下列不会出现的出栈顺序是
..
( )。
A
.
E, A, B, C, D B
.
A, B, C, D, E
C
.
B, C, D, E, A D
.
E, D, C, B, A
2.
以下步骤描述的分形方式是( )。
步骤
1
:把闭区间平均分为三段,去掉中间的
1/3
部分段,留下剩余两个闭
区间;
步骤
2
:将剩下的两个闭区间各自平均分为三段,同样去掉中间的区间段,
这时剩下四段闭区间;
步骤
3
:重复删除每个小区间中间的
1/3
段,迭代至区间无穷小。
A.Koch曲线 B.谢尔宾斯基三角形
D.牛顿迭代 C.康托尔三分集
3.
下方排序算法的时间复杂度为( )。
x = 0
y = 1
for i in range(n):
x += i
for j in range(n):
y *= j
A
.
O(n)
B
.
O(n
2
)
C
.
O(logn)
D
.
O(1)
Python
编程(三级)试卷 第
1
页 共
14
页
4.
下列属于分类算法的是( )。
A
.
K-Means
算法
B
.
DBSCAN
算法
C
.
Koch
曲线递归算贝叶斯算法
D
.
法
5.
对于顺序存储的栈和队列,进行插入运算的时间复杂度为( )。
A
.
O(n)
B
.
O(n
2
)
C
.
O(logn)
D
.
O(1)
6.
下列满足短任务优先且不会发生饥饿现象的调度算法是( )。
A
.
先来先服务
B
.
高响应比优先
C
.
时间片轮转
D
.
非抢占式短任务优先
7.
下方代码段采取的排序方法是( )。
def sort(data):
d1 = []
while len(data):
min = [0, data[0]]
for i in range(len(data)):
if min[1] > data[i]:
min = [i, data[i]]
del data[min[0]]
(min[1])
return d1
A
.
快速排序
B
.
冒泡排序
C
.
选择排序
D
.
插入排序
8.
下方代码段通过插入排序的方法完成排序,空白处应补充的代码是(
def insertion_sort(arr):
Python
编程(三级)试卷 第
2
页 共
14
页
。
)
for i in range(1, len(arr)):
current = arr[i]
pre_index = i - 1
while pre_index >= 0 and arr[pre_index] > current:
pre_index -= 1
arr[pre_index + 1] = current
return arr
A
.
a
rr[pre_index]
arr[pre_index+1]
arr[i] = arr[i+1]
B
.
C
.
a
rr[pre_index+1]
arr[pre_index]
arr[i+1] = arr[i]
D
.
9.
=
=
运行下方代码段,输出的结果是( )。
def isPrefixOfWord(sentence,searchWord):
l = ()
for i in range(len(l)):
if l[i][:len(searchWord)]==searchWord:
return i + 1
return -1
Python
编程(三级)试卷 第
3
页 共
14
页
sentence = "Python is the best computer language!"
searchWord = "comput"
i = isPrefixOfWord(sentence, searchWord)
print(i)
-1
A
.
C
.
5
10.
B
.
i+1
6
D
.
使用迪杰斯特拉(Dijkstra)算法,求图中从顶点1到其他各顶点的最短路
径,得到各最短路径的目标顶点依次是( )。
A
.
5
,
2
,
6
,
3
,
4
C
.
5
,
2
,
4
,
3
,
6
11.
B
.
5
,
2
,
3
,
6
,
4
D
.
5
,
2
,
3
,
4
,
6
使用冒泡排序将序列
3
,
4
,
1
,
11
,
15
,
7
,
4
升序排列,需要交换( )。
A
.
2
次
C
.
5
次
B
.
3
次
D
.
6
次
12.
下列路径算法中,属于贪心算法的是( )。
A.迪杰斯特拉(Dijkstra)算法 B.深度优先搜索算法
Python
编程(三级)试卷 第
4
页 共
14
页
C.弗洛伊德(Floyd)算法 D.广度优先搜索算法
13.
运行下方代码段,输出的结果是( )。
def search(nums, target):
def helper(tar):
i, j = 0, len(nums) - 1
while i <= j:
m = (i + j) / 2
if nums[m] <= tar:
i = m + 1
else:
j = m - 1
return i
return helper(target) - helper(target-1)
nums = [5,6,6,8,8,8,10]
target = 8
i = search(nums, target)
print(i)
A
.
7
B
.
6
C
.
4
D
.
3
14.
使用选择排序将序列
3
,
7
,
14
,
1
,
18
,
5
,
8
,
9
升序排列,需要交换(
Python
编程(三级)试卷 第
5
页 共
14
页
。 )
A
.
3
次
15.
B
.
4
次
C
.
6
次
D
.
10
次
运行下方代码段,输出的结果最接近( )。
import random
n = 1000000
r = 1.0
a, b = (0.0, 0.0)
x_neg, x_pos = a - r, a + r
y_neg, y_pos = b - r, b + r
count = 0
for i in range(0, n):
x = m(x_neg, x_pos)
y = m(y_neg, y_pos)
if x*x + y*y <= 1.0:
count += 1
print (count / float(n)) * 4
A
.
π
/
4
C
.
π
B
.
π
/
2
D
.
2π
二、多项选择题(共
5
题,每题
2
分,共
10
分)
Python
编程(三级)试卷 第
6
页 共
14
页
16.
下列对Python第三方库sklearn的叙述中,正确的有( )。
A.sklearn库中封装了大量的机器学习算法
B.sklearn库中linear_model是广义的线形模型
C.sklearn库中决策树模型是_bayes
D.from _model import LogisticRefression可以导入线形回归函数
17.
下列排序算法中,基于比较的算法有( )。
A.堆排序 B.冒泡排序 C.桶排序 D.希尔排序
18.
下列对于聚类算法的叙述中,正确的有( )。
A.聚类分析是给定划分类别的情况下,根据类别进行样本分组的方法
B.与传统分群方法相比聚类方法可以发现之前未知的特征因素
C.K-means是常见的聚类方法,速度快,效率高
D.与传统分群方法相比聚类方法能对新的数据快速复制应用
19.
下列有关预测算法的叙述中,属于线性回归模型的优势有( )。
A
.
模型简单易解释
C
.
对于非线性关系易捕捉
B
.
系数大小易理解
D
.
更好的分析数据之间的相互影响
20.
下列有关常见数据结构的叙述中,正确的有( )。
A.栈由系统自动分配存储空间,堆由人为申请开辟空间
B.栈申请空间的效率较低,堆的申请效率较高
C.栈只允许在栈顶插入和删除元素,堆可以随意存取
Python
编程(三级)试卷 第
7
页 共
14
页
版权声明:本文标题:全国青少年编程Python编程四级试卷1及答案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1715229489a686483.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论