2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx

上传人(卖家):Q123 文档编号:6549375 上传时间:2023-07-20 格式:PPTX 页数:18 大小:1.67MB
下载 相关 举报
2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx_第1页
第1页 / 共18页
2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx_第2页
第2页 / 共18页
2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx_第3页
第3页 / 共18页
2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx_第4页
第4页 / 共18页
2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、2.2 链表水果类类是现实世界或思维世界中的实体在计算机中的反映,用来描述具有相同的属性和方法的对象的集合,它定义了每个对象所共有的属性和方法。在 Python 中,对象用类创建。类被称为类对象,类的实例被称为类的对象。创建一个新类意味着创建一个新类型的对象,从而允许创建一个该类型的对象实例。每个类的实例可以拥有保存自己状态的属性和改变自己状态的、定义在类中的方法。类和实例举例:新建一个类对象“蔬菜”,里面可以有“白菜”、“青菜”、“西红柿”这些对象。类的定义Python 使用 class 关键字来定义类,其语法格式如下:类是抽象的,要使用类定义的功能,就必须进行类的实例化,即创建类的对象,其

2、语法格式为:对象名=类名(参数列表)。类中的属性类的数据成员是在类中定义的成员变量,用来存储描述类的状态特征的值,也称为属性。属性可以被该类中定义的方法访问,也可以通过类的对象进行访问。通过“self.变量名”定义的属性,称为类的对象属性,属于类实例化的特定对象。对象属性在类的内部通过“self.变量名”访问,在外部通过“对象名.变量名”来访问。类属性属于整个类,是在类中所有方法之外定义的变量,所有实例之间共享一个副本。类属性在类的内部通过“类名.类属性名”或“self.类属性名”访问,在外部可以通过类对象和实例对象访问公有的类属性,但不能访问私有的类属性。类的对象方法 类的对象方法对类的某个

3、实例化对象进行操作,一般以 self 作为其第一个形式参数(也可以使用其他名字)。声明对象方法的语法格式如下:方法的调用格式为:对象名.方法名(实 参 列表)。注意:虽然对象方法的第一个参数是 self,但是在调用时,用户不需要也不能给该参数传递值,Python会自动地把对象传递给 self参数。(拓展选学)链表类在python中没有指针,不能直接进行链表操作,但是python面向对象编程可以定义一个链表类来进行链表操作。在类中设定链表和节点的属性、方法,在后续的程序中可以直接运用。(1)单向链表的类定义通常使用两个类来协调表示单向链表,即单向链表的节点类(LinkNode)和单向链表类(Li

4、nkList)。先定义单向链表的节点类,代码如下:#定义节点类LinkNode#初始化节点包含两个区域self.data、self.next#self.data区域保存数据#self.next区域保存指针再定义单向链表类,代码如下:(2)单向链表节点的访问链表节点只能通过头指针(head)进行访问,其他节点通过节点间的指针依次访问。可以设计类的魔术方法_str_(),当使用 print()函数输出类对象的值时,会自动调用_str_()方法,依次输出链表的所有节点,代码如下:(3)单向链表节点的插入在链表中插入新节点时,无需移动链表中的元素,只要修改链表中节点指针域的值,就能高效地实现插入操作。

5、在单向链表插入新节点可能会出现三种情况,从表头插入、从中间插入或追加在表尾。当从表头插入时,可以设计类的方法 prepend(),代码如下:当从表尾插入时,可以设计类的方法 append(),代码如下:当从表中间插入时,可以设计类的方法 insert(),代码如下:(4)单向链表节点的删除单向链表中元素的删除比较简单。若要删除节点号为 index 的节点,则只需找到其前驱节点,修改前驱节点的 next指针指向其后继节点。当 index 越界时删除尾节点;若删除了头节点,则需要修改头指针。可以设计类的方法 pop(),代码如下:练一练1.已知学生类的定义如下:Class student:def

6、_init_(self,name,age_=18,sex_=“女”):self.name=name self.age=age_ self.sex=sex_ def _str_(self):return f”姓名:self.name,年龄:self.age,性别:self.sex”下列代码段定义了一个学生类的实例a,并输出其值:a=student(”王丽”,”16”)print(a)则执行该段程序后,程序输出的值为:A.姓名:王丽,年龄:16,性别:B.姓名:王丽,年龄:18,性别:女C.姓名:王丽,年龄:16,性别:女D.姓名:王丽,年龄:18,性别:女C2.已知单向链表类的定义如下:class linklist:def _init_(self):self.head=None则不带头节点的单向链表a为空的判定条件为A.self.head is NoneB.self.head is not NoneC.self.head.next is None D.self.head.next is not NoneA谢 谢

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高中 > 信息 > 教科版(2019) > 必修2 信息系统与社会
版权提示 | 免责声明

1,本文(2.2.3链表类 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx)为本站会员(Q123)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|