- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CAD/CAM软件开发基础
问题的提出:
什么是数据的逻辑结构和物理结构?
线性表的顺序存储结构和链接存储结构各有什么特点?
树和二叉树的概念,一般树如何转换为二叉树?如何对二叉树进行遍历?
对文件进行排序和查找的常用算法有哪些?
§3.1 数据结构
一、数据结构与数据元素
在进行CAD、CG程序设计时,不管是数值计算、还是对几何形体的描述与处理,除了研究程序的算法外,还要研究被处理对象的数据和数据之间的相互关系——数据结构。
如:
数据结构是研究描述一个客观事物所需要的数据元素和它们之间相互关系的一门学科。
数据结构不仅直接关系到程序设计的算法和运行效率,而且与程序的存贮空间密切相关。
在数据处理中,首先应将现实世界转化为信息世界,然后将信息世界转化为数据世界。
描述的是数据之间的逻辑关系,它从客观的角度组织和表达数据。
线性结构
每一个数据元素仅与它前面的一个和后面的一个数据元素相联系,因而仅能用于表达数据之间的简单的顺序关系。线性结构是最简单的结构,它所表示的关系是一对一的。
非线性结构
常以树状或网状的结构形式出现。
在树形结构中,只有唯一的一个结点没有前驱,称为“树根”,其余都有且仅有一个前驱。它反映的关系是“一对多”的。
网状结构,结点的前驱和后继的个数不受限制,它反映的关系是“多对多”的。显然可以把树看成是网状的特例。
如下图所示。
2.数据的物理结构:是数据在计算机内部的存储方式,是数据的逻辑结构在计算机中的映象。它包括数据元素的映象和关系的映象。数据的物理结构用以描述数据在存储器中如何表示和如何安排。
计算机的内存储器是由很多的存储单元组成的,它们有唯一的连续的地址编码,用以标识存储单元。设2个单元分别为Z1,Z2,它们的地址记为dZ1,dZ2,若dZ2= dZ1+1,就称“Z1 Z2是相继的单元”。一片相继的存储单元的整体称为1个“存储区域”。
顺序存储 是指存储的物理顺序就是结构的逻辑顺序,显然这样的存储方式只能用于简单的线性结构。
顺序存储结构占用存储单元少,简单易行,结构紧凑。但数据结构缺乏柔性,若要增删数据,必须重新分配存储单元,因而不适合需要频繁修改、补充、删除数据的场合。即把数据的地址分散存放在其他有关的数据中,并按照存取路径进行链接。??? 在链接存储结构中,一个数据元素项由信息字段(INFO)和指针字段(POINT)组成:
信息字段 指针字段 ??? 链接存储有以下几种形式:
?
??? 链接存储结构在不改变原来存储结构的条件下,增删记录十分方便,只要控制指针即可。
?
三 、图形数据的基本要求
图形系统设计中,常用的数据结构有:线性表、数组、栈、队、链表、树和图等,同一物体可以采用几种数据结构来描述,但对任何一种数据结构都应具备如下基本要求:
①能够描述物体或图形的几何信息和拓扑信息;即能描述几何元素的几何量和各几何量之间的相互关系;
②便于对物体和图形进行各种操作;如各种插入、变换或删除其中的某些几何元素;
③需要有较小的存贮空间;
④便于检索,即能快速查询到所需要的几何元素。
§3.2 线性表结构
线性表是一个有序的数据元素的有限集合,其逻辑结构可表示为:(对n个数据元素的线性表)
( a1, a2, …, ak-1, ak, ak+1, … an )
用图形表示为:
特点: 在线性表中,除第一元素只有一个直接后趋,最后一个元素只有一个直接前趋外,其余元素均有一个直接前趋和直接后趋。其中每个数据元素ak可以是一个数、一个符号、还可以是一个线性表,甚至更为复杂的数据结构。
如:一年中12个月可构成一线性表(Jan、Feb、Mar、……);
齿轮的标准模数可构造一个线性表:
(1,1.25,1.5,2,.50,3,4,……50)
又如:由减速箱零件清单可构成一线性表,表中的数据元素是由四个数据项组成的一个复杂的数据结构。
序号 名称 数量 材料 1 箱体 1 HT100 2 箱盖 1 HT100 3 齿轮轴 3 45 .
. .
. .
. .
.
线性表中的数据元素可能是各种各样的结构,但同一线性表中数据结构的类型必须是相同的,线性表中数据元素的数量定义为线性表的长度。
线性表的存储结构有:顺序存储结构和链式存储结构。
一、线性表的顺序存储结构
1、什么是线性表顺序存储结构
在这种存储结构中,数据元素在存储介质中的存放地址和该元素的逻辑顺序之间存在着一一对应的关系。
假定:每个数据元素占用l个存储单元,第一个数据元素占用的第一个存储单元地址为Loc(a1),则第K个数据元素的存储位置为:
Loc(aK) = Loc(a1) + (k-1) × l
又如:对于数组:
以行为主序:
以列为主序:
对于A=[aij]m×n
若a1
您可能关注的文档
最近下载
- 欧洲规范-NF P98-200-2-中文.pdf VIP
- 2024年3月30日河北省直遴选面试真题及答案解析(下午卷).doc VIP
- 2025年3月30日河北省直遴选面试真题及答案解析(下午卷).doc VIP
- 我国糖尿病视网膜病变临床诊疗指南(2022年).docx VIP
- 2024年3月31日河北省直遴选面试真题及答案解析(上午卷).doc VIP
- 《水泥混凝土路面施工及验收规范GBJ 97-1987》知识培训.pptx VIP
- 2024年海南省省属虚拟市儋州市兰洋镇招聘社区工作者真题及完整答案详解1套.docx VIP
- 公司员工关怀管理方案.docx VIP
- 西方烹饪英语课件资料.ppt VIP
- 2024年3月17日河北省直遴选笔试真题及答案深度解析.doc VIP
文档评论(0)