广义表的案例教学研究

来源 :现代职业教育·高职高专 | 被引量 : 0次 | 上传用户:liang_yanzhi
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要] 以广义表为例,探讨在数据结构教学中,如何抓住知识运用这个主题,激发学生的学习兴趣,提高数据结构抽象能力。
  [关 键 词] 广义表;json格式;数据抽象
  [中图分类号] G712 [文献标志码] A [文章编号] 2096-0603(2018)28-0116-01
  一、概述
  程序设计的主要任务就是数据表示和处理,数据表示又可以分为数据建模和数据的机内表示。数据建模即抽象出数据逻辑结构,是指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与它们在计算机中的存储位置无关。数据的机内表示分为数据元素的机内表示和关系的机内表示,即数据的物理结构,数据元素的机内表示一般是把数据元素中各个数据项组织成一个节点,放在一块连续的
  内存、数据元素之间关系的机内表示一般采用顺序、链接、索引、散列等多种存储形式。常用的存储形式有顺序存储形式和链式存储形式。数据结构课程主要是研究数据的逻辑结构与数据的物理结构。
  多年的教学实践中发现,学生很难把数据结构的知识与程序
  设计联系起来,用的最多的就是数组与链表,而这只是数据元素之间关系的机内表示。几乎不会把实际问题抽象形成数据结构的课程中学到的各种典型结构。
  本文选择软件开发中经常用的json结构与广义表的关系研究,探讨在广义表的教学中如何做到使学生学以致用。
  二、广义表
  广义表是一种特殊的线性表,与线性表不同,广义表的元素可以是一个简单值,也可以是一个广义表。广义表一般表示为,LS={a,b,c,…,A,B,C,…},其中小写字母表示单个元素,大写一个广义表,可以看出广义表是一种嵌套表。
  在软件开发中,很多事物都适合用广义表进行描述与存储。例如,中國有很多省就可以这样描述:中国=(“中国”,省1,省2,…);每个省又是一个线性表:省=(“名称”,市1,市2…),等等。
  广义表中各个子广义表的结构与长度可能都不同,所以一般
  都用链式存储结构,而且可能是异构节点的链表。如果用顺序存储,就要考虑定长,或者为子广义表定义一个开始或结束标志。
  由于广义表的复杂性,加上各个语言的语法元素没有直接的
  语法元素对应,学生就不太愿意学。
  三、Json
  json(javascript object notation)是一种javascript对象表示法,它是一种数据交换的文本格式,2001年由Douglas Crockford提出,目的是取代繁琐笨重的XML格式。
  Json的元素可以是三种类型:
  1.简单值。 字符串、数值、布尔值和null。
  2.对象。 对象表示一组有序的键值对,每个值可以是简单数据类型值,也可以是复杂数据类型的值。
  3.数组。 数组是一种复杂数据类型,表示一组有序值的列表,数组值可以是简单值、对象或数组。
  下面是中国行政区结构的json表示,包含json对象、json
  数组。
  {
  {“name”:"中国",“province”:[{“name”:"黑龙江",“cities”:{“city”:["哈尔滨","大庆"] }},{“name”:"广东",“cities”:{“city”:["广州","深圳","珠海"] }}…]
  }
  四、案例设计
  结合学生熟悉的现实场景,充分考虑广义表与json的基本特
  征,在教学中我们选择了学校这个对象,一个学校有许多系,一个系有许多班级,每个班有许多学生的应用案例。
  该案例的json就是:
  学校={“名称”:“学校名称”,
  “系”:[{“名称”:“系1”,
  “班”:[{“名称”:“班1”,[“学生1”,“学生2”,…]}, {“名称”:“班2”,[“学生1”,“学生2”,…]},…]},
  {“名称”:”系2” ,
  ”班”:[{“名称”:“班1”,[“学生1”,“学生2”,…]}, {“名称”:“班1”,[“学生1”,“学生2”,…]},…]},…]}
  把信息进行抽象得到的广义表描述如下:
  学校=(“学校名称”,“系1”,“系2”,…)
  系=(“系名”,“班1”,“班2”,…)
  班=(“班号”,“学生1”,“学生2”,…)
  至此,学生就可以通过课堂学到的广义表的存储方式,理解json结构是如何存储的。现在许多内存数据库,用的就是json结构描述对象,进而通过这样的抽象,学生也理解了一种面向对象数据库存储方式。
  五、效果
  近几年教学实践,这样使学生理论联系实际,很容易也很愿意学习广义表了。
  参考文献:
  [1]严蔚敏,吴为民.数据结构[M].清华大学出版社,2002(2).
  [2][美]巴塞特.JSON必知必会[M].人民邮电出版社,2016.
其他文献
在家长教育意识不断提高的今天,做好家校互动,已经成为了小学班主任日常工作的一部分.家校互动,能够促进教师与家长深入交流,更好地了解学生的情况,也能为学校教育和家庭教育
[摘 要] 目的:评价PACS联合PBL教学法在医学影像专科生实习教学中的应用价值。方法:2017年10月,接收的医学影像专科实习生30例入组,按照实习的秩序进行分组。其中对照组15例、观察组15例,分别采用PBL教学、PACS联合PBL教学法,对比期末测试成绩,学生对教学方法、阅片量的满意度。结果:观察组特征提取、看片诊断、诊断技术、合计评分高于对照组,差异有统计学意义(P<0.05)。观察组与
如何做好新形势下职工群众工作,维护职工合法权益、创造和谐劳动关系,推动企业和职工共同进步,需要工会组织不断创新发展、有所作为。本文从四个方面对进一步激发工会组织活力进
新课改实施高中数学教学愈发重视习题教学,通过习题夯实数学基础,提高数学学习效率.本文联系高中数学教学情况,分析核心素养背景下做好高中数学习题课教学的措施.
深化课程改革是落实立德树人根本任务的必由之路,为适应新时代要求,健全立德树人系统化落实机制,培养全面发展的人才,立足本土资源,充分利用当地自然资源、人文资源、红色资
随着教育事业的快速发展,小学班主任的个人工作重要性逐渐提高.小学阶段,是儿童学习成长的启蒙阶段.小学班主任的日常管理工作和谐性,对于学生的思想形成和行为发展有直接影
[摘 要] 客户关系管理课程是门实践性和综合性很强的学科,课程特点一定程度上决定了教学方法。基于高职院校客户关系管理课程教学存在的问题,对高职客户关系管理教学给出了相关建议。  [关 键 词] 客户关系管理;高职;教学;问题;对策  [中图分类号] G712 [文献标志码] A [文章编号] 2096-0603(2018)28-0115-01  客户关系管理课程是一门建立在市场营销学、经济学以及现
作为音乐老师,要善于调动学生的学习兴趣,鼓励他们能说则说,能唱则唱,能舞则舞,尽量参与到课堂中来.
小学阶段的数学教学中除了要求学生掌握一定的基础知识外,还需要学生掌握一定的数学思想,但是小学阶段的学生主要运用的是形象思维,这就需要在实际的教学中教师要善于运用恰
制度建设是党风廉政建设的重要组成部分,习近平总书记指出,制度问题更带有根本性,全局性,稳定性,长期性,关键是健全权利运行制约和监督体系,让人民监督权利,让权利在阳光下运行,把权利