搜索
    上传资料 赚现金
    2.2.1 链表的概念、特性、基本操作 课件
    立即下载
    加入资料篮
    2.2.1 链表的概念、特性、基本操作 课件01
    2.2.1 链表的概念、特性、基本操作 课件02
    2.2.1 链表的概念、特性、基本操作 课件03
    2.2.1 链表的概念、特性、基本操作 课件04
    2.2.1 链表的概念、特性、基本操作 课件05
    2.2.1 链表的概念、特性、基本操作 课件06
    2.2.1 链表的概念、特性、基本操作 课件07
    2.2.1 链表的概念、特性、基本操作 课件08
    还剩18页未读, 继续阅读
    下载需要20学贝
    使用下载券免费下载
    加入资料篮
    立即下载

    浙教版 (2019)选修1 数据与数据结构2.2 链表说课ppt课件

    展开
    这是一份浙教版 (2019)选修1 数据与数据结构2.2 链表说课ppt课件,共26页。PPT课件主要包含了head等内容,欢迎下载使用。

    情境导入——排队与插队
    数组的缺点:插入和删除元素操作需要移动大量的元素频繁增、删数据导致数据规模不稳,形成存储空间“碎片”需要限定最大空间,造成资源浪费
    整队前的位置和链接关系
    链表指的是将需要处理的数据对象以结点的形式,通过指针串联在一起的一种数据结构。
    保存相邻结点的存储地址
    头指针(head)作用:
    一是链表的入口,只有通过头指针才能进入链表
    二是为循环链表设立一个边界,便于数据处理时的边界判断和处理
    根据每个结点中指针的数量分为:
    第一个结点和最后一个结点使用指针链接,这样就形成了循环链表。
    单向链表中各个结点在内存中可以随意存储,每个结点使用指针指向其后继结点的存储地址。进入链表只能通过头指针head,其他结点则需要经过所有在它之前的结点才可以访问,尾结点的指针指向为null,表示指向为空。
    (1)同一链表中每个结点的结构均相同
    (2)每个链表必定有一个头指针,以实现对链表的引用和边界处理
    (3)链表占用的空间不固定
    链表的基本操作——链表的创建
    Item=[]Head=-1
    其中head值为–1,表示头指针指向为空,该链表为空链表。
    创建链表时,首先要根据问题特点规划结点的数据域和指针域,然后根据规划创建一个空表和头结点。接下来就可以根据输入的实际数据形成结点并逐步插入到已有的链表中。
    链表的基本操作——链表的访问
    链表只能通过头指针(head)进行访问,其他结点通过结点间的指针依次访问。如图,当想访问单向链表中data3所在的结点时,需通过头指针进入链表,再分别按照各个结点的指针指向经过data1和data2所在结点,最后通过data2所在结点的指针才能访问data3所在的结点。
    链表的基本操作——链表结点的插入与删除
    在单向链表data1和data2所处结点的中间位置插入一个新结点
    1. 在单向链表中插入新结点时,指针指向的修改是否必须有先后?如果将其顺序逆转,能否完成新结点的插入?为什么?
    在列表模拟实现的链表中插入新结点的过程
    data[8][1]=data[1][1]data[1][1]=8
    参考上图,描述出在有8个结点的单向链表中删除第一个结点、中间结点及尾结点的过程。
    链表的基本操作——数据合并
    (1)算法设计 ①初始化两个空链表data_a和data_b,并使用head_a和head_b作为两个链表的头指针,其中data_a作为存储结果的链表。 ②使用随机函数randint(start,end)模拟生成两个降序序列数据,生成新的结点在尾部插入。
    (1)算法设计 ③使用变量k_a与k_b指向两个链表中未合并的数据序列中最前面(值最大)的结点,初始化k_a=head_a,k_b=head_b,由于在链表data_a中需要进行插入结点的操作,必须记录插入位置的前驱结点,使用变量q_a,初始化q_a=head。重复以下操作,直到k_a或k_b指向空(即某个链表元素全部处理完):比较data_a[k_a][0]和data_b[k_b][0]的大小。若data_a[k_a][0]≥data_b[k_b][0],则修改q_a与k_a相等,再将k_a指向下一个结点;否则将链表data_b中k_b指向的结点插入到链表data_a中,作为q_a指向结点的后继结点,再将k_b指向链表data_b中的下一个结点。 ④若k_b未指向空,则将链表data_b剩余结点按顺序插入链表data_a的尾部。 ⑤输出链表data_a中每个结点的数据区域的值。
    链表的基本操作——数据合并程序实现
    链表的基本操作——链表结点的访问与遍历
    (1)抽象与建模 该问题中的关键数据是n个参与人员的初始编号,1至n的序列。从编号1开始计数,每过一个编号加1,当计数到m时将该编号从数据序列中移除,并从该编号的后一编号从1开始重新计数。而当计数到序列中最后一个编号,又从序列的开始编号继续计数,从而将计数序列构成一个环。重复这个过程,直到序列中只剩一个编号,该编号即为最后剩下人员的初始编号。
    (2)设计数据结构与算法 该问题中数据规模在初始时可以确定(最大为n),但是在数据处理过程中需要按照规则不断地移除数据,直至只剩一个为止。也就是说,数据规模在处理过程中逐渐变小,呈现不稳定的特性,符合链表的应用。 由于最终需要输出初始编号信息,所以链表每个结点中数据区域用来保存初始编号,指针区域需要一个用来保存指向后继结点的指针。同时由于序列中最大编号报数后会从序列中最小编号继续报数,所以可以采用单向循环链表来组织数据。基于链表这种数据结构的设计,可以设计出相应的算法如下:
    算法如下: ①创建一个由n个结点组成的单向循环链表,并使报数计数器i的初始化值为1,同时当前报数人的指针k指向链表中第一个结点。 ②重复执行下列处理,直到链表中只剩下一个结点:随着报数的进行,不断指向下一个结点,报数计数器i也随之增加,当i增加到淘汰数m时,将对应的链表结点删除,若删除的结点为头结点,则需同时修改头指针的指向;在删除结点的同时,需要重置报数计数器i的值为1。 ③将链表中唯一结点,也就是头指针指向的结点中的数据(即初始编号)输出。
    对自己和同伴的表现进行客观的评价,并思考后续完善的方向。(5=优秀,4=超出一般水平,3=满意,2=有待改进,1=不太理想)
    相关课件

    选修1 数据与数据结构第二章 数据与链表2.2 链表优质课件ppt: 这是一份选修1 数据与数据结构第二章 数据与链表2.2 链表优质课件ppt,文件包含221链表的概念特性基本操作课件pptx、221链表的概念特性基本操作教学设计doc等2份课件配套教学资源,其中PPT共26页, 欢迎下载使用。

    选修1 数据与数据结构第二章 数据与链表2.1 数组公开课课件ppt: 这是一份选修1 数据与数据结构第二章 数据与链表2.1 数组公开课课件ppt,文件包含211数组的概念特性基本操作课件pptx、211数组的概念特性基本操作教学设计doc等2份课件配套教学资源,其中PPT共26页, 欢迎下载使用。

    高中信息技术浙教版 (2019)选修1 数据与数据结构2.2 链表课文配套ppt课件: 这是一份高中信息技术浙教版 (2019)选修1 数据与数据结构2.2 链表课文配套ppt课件,共12页。PPT课件主要包含了讲一个故事,问题分析,抽象与建模,设计数据结构与算法,编程实现,效率测试,课堂小结,学习评价等内容,欢迎下载使用。

    免费资料下载额度不足,请先充值

    每充值一元即可获得5份免费资料下载额度

    今日免费资料下载份数已用完,请明天再来。

    充值学贝或者加入云校通,全网资料任意下。

    提示

    您所在的“深圳市第一中学”云校通为试用账号,试用账号每位老师每日最多可下载 10 份资料 (今日还可下载 0 份),请取消部分资料后重试或选择从个人账户扣费下载。

    您所在的“深深圳市第一中学”云校通为试用账号,试用账号每位老师每日最多可下载10份资料,您的当日额度已用完,请明天再来,或选择从个人账户扣费下载。

    您所在的“深圳市第一中学”云校通余额已不足,请提醒校管理员续费或选择从个人账户扣费下载。

    重新选择
    明天再来
    个人账户下载
    下载确认
    您当前为教习网VIP用户,下载已享8.5折优惠
    您当前为云校通用户,下载免费
    下载需要:
    本次下载:免费
    账户余额:0 学贝
    首次下载后60天内可免费重复下载
    立即下载
    即将下载:0份资料
    • 充值学贝下载 90%的用户选择 本单免费
    • 扫码直接下载
    选择教习网的 4 个理由
    • 更专业

      地区版本全覆盖, 同步最新教材, 公开课⾸选;1200+名校合作, 5600+⼀线名师供稿

    • 更丰富

      涵盖课件/教案/试卷/素材等各种教学资源;500万+优选资源 ⽇更新5000+

    • 更便捷

      课件/教案/试卷配套, 打包下载;手机/电脑随时随地浏览;⽆⽔印, 下载即可⽤

    • 真低价

      超⾼性价⽐, 让优质资源普惠更多师⽣

    开票申请 联系客服
    本次下载需要:0学贝 0学贝 账户剩余:0学贝
    本次下载需要:0学贝 原价:0学贝 账户剩余:0学贝
    了解VIP特权
    您当前为VIP用户,已享全站下载85折优惠,充值学贝可获10%赠送

        扫码支付后直接下载

        0元

        扫码支付后直接下载

        使用学贝下载资料比扫码直接下载优惠50%
        充值学贝下载,本次下载免费
        了解VIP特权
        • 微信
        • 支付宝

        微信扫码支付

        支付宝扫码支付(支持花呗)

        到账0学贝
        • 微信
        • 支付宝

        微信扫码支付

        支付宝扫码支付 (支持花呗)

          下载成功

          Ctrl + Shift + J 查看文件保存位置

          若下载不成功,可重新下载,或查看 资料下载帮助

          本资源来自成套资源

          更多精品资料

          正在打包资料,请稍候…

          预计需要约10秒钟,请勿关闭页面

          服务器繁忙,打包失败

          请联系右侧的在线客服解决

          单次下载文件已超2GB,请分批下载

          请单份下载或分批下载

          支付后60天内可免费重复下载

          我知道了
          正在提交订单

          欢迎来到教习网

          • 900万优选资源,让备课更轻松
          • 600万优选试题,支持自由组卷
          • 高质量可编辑,日均更新2000+
          • 百万教师选择,专业更值得信赖
          微信扫码注册
          qrcode
          二维码已过期
          刷新

          微信扫码,快速注册

          还可免费领教师专享福利「樊登读书VIP」

          手机号注册
          手机号码

          手机号格式错误

          手机验证码 获取验证码

          手机验证码已经成功发送,5分钟内有效

          设置密码

          6-20个字符,数字、字母或符号

          注册即视为同意教习网「注册协议」「隐私条款」
          QQ注册
          手机号注册
          微信注册

          注册成功

          下载确认

          下载需要:0 张下载券

          账户可用:0 张下载券

          立即下载

          如何免费获得下载券?

          加入教习网教师福利群,群内会不定期免费赠送下载券及各种教学资源, 立即入群

          即将下载

          2.2.1 链表的概念、特性、基本操作 课件

          该资料来自成套资源,打包下载更省心

          [共10份]
          浏览全套
            立即下载(共1份)
            返回
            顶部