ID: 24177317

浙教版(2019)选修一2.2链表同步练习(含解析)

日期:2025-11-24 科目:信息技术 类型:高中试卷 查看:86次 大小:57306B 来源:二一课件通
预览图 1/5
教版,2019,选修,链表,同步,练习
  • cover
浙教版(2019)选修一2.2链表同步练习 学校:_____姓名:_____班级:_____考号:_____ 一、选择题 1.某Python程序如下: a=[[3,2],[2,3],[7,1],[1,0]] p=head=0 while a[p][1]!=head: print(a[p][0],end='->') p=a[p][1] print(a[p][0]) 程序运行后,输出的结果是( ) A.3->7->2->1 B.3->2->7->1 C.1->7->3->2 D.3->7->1->2 2.有如下图所示的单向链表: 从头指针head指向的节点开始查找数据元素“5”,并删除该节点,下列说法正确的是( ) A.共需查找3次 B.删除数据元素“5”的节点,后续节点需要移动3次 C.头指针head将指向数据元素“7”的节点 D.操作完成后,链表中数据元素的个数为6个 3.使用链表结构模拟某校游玩路线,链表a中每一个节点包含三个数据,第1个为景点名称,第2个为预计游玩时间(单位:分钟),第3个为下一个景点指针。该校可以从多个景点开始游玩,但只能从“南大门”离开,输出显示从各景点进入路线及预计总时间的代码如下。a=[["校训石",21,2],["行政楼",40,2],["风雨操场",50,5],["丽泽湖",30,4],["西餐厅",60,5],["南大门",20,-1]] head=[0,1,3] for i in range(len(head)): (1) s=a[p][1] while a[p][2]!=-1: print(a[p][0],end="→") (2) (3) print(a[p][0]) print("预计时间:",s,"分钟") 上述程序划线处的可选代码有: ①p=head ②p=head[i] ③s=s+a[p][1] ④p=a[p][2] 则(1)、(2)、(3)处代码依次为( ) A.①③④ B.①④③ C.②③④ D.②④③ 4.使用链表结构模拟某景区游玩路线,链表a中每一个节点包含三个数据,第1个为景点名称,第2个为预计游玩时间(单位:分钟),第3个为下一个景点指针。景区可以从多个景点的大门进入,但只能从"天梯"离开,输出显示各大门进入路线及预计总时间的代码如下。 a=[["迎客松",21,2],["激流勇进",40,2],["天空栈道",50,5],["一线天",30,4],["飞来峰",60,5],["天梯",20,-1] head=[0,1,3] for i in range(len(head)): (1) s=a[p][1] while a[p][2]! =-1: print(a[p][0],end="-->") (2) (3) print(a[p][0]) print("预计时间:",s,"分钟") 上述程序划线处的可选代码有: ①p=head ②p=head[i] ③s=s+a[p][1] ④p=a[p][2] 则(1),(2),(3)处代码依次为( ) A.①③④ B.①④③ C.②③④ D.②④③ 5.利用列表模拟某单向非循环链表a(其中可能存在已被删除的节点),下列程序运行完毕后,变量p肯定表示尾节点的节点位置的是(  ) A. B. C. D. 6.下列Python程序段的功能是在链表link1中删除数据为key的所有节点,link1链表中的每个节点由一个数据域和一个指针域组成。 #建立链表 link1,代码略 key=int(input("输入要删除的数据:")) head=0 while link1[head][0]==key and head!=- 1: head=link1[head][1] p=q=head if head==- 1: print("全部数据删除") else: q=link1[q][1] while ① : if link1[q][0]==key: ② else: p=link1[p][1] q=link1[q][1] 则划线①②处的代码分别为(  ) A.①link1[q][1]!=- 1 ②link1[p][1]=link1[q][1] B.①link1[q][1]!=- 1 ②link1[q][1]=link1[p][1] C.①q!=- 1 ②link1[q][1]=link1[p][1] D.①q!=- 1 ②link1[p][1]=link1[q][1] 7.有如下Python程序段,其功能是将一个单向链表转换成原链表的逆序链表: lst=[[15,4],[30,-1],[8,0],[5,2],[19,1]] head=3 p=head q=-1 while p!=-1: tmp=lst[p][1] head=q 上述程序段执行后lst内容变为[[15,2],[30,4],[8,3],[5,-1],[19,0]]。方框处可选代码有:①q=p ②p=tmp ③lst[p][1]=q,则方框处的语句依次为( ) A.①②③ B.②③① C.③①② D.③②① 8.寻宝游戏中通过一个线索找到下一个线索,最好用下列数据组织形式中的( )来表示。 ... ...

~~ 您好,已阅读到文档的结尾了 ~~