第5讲数据结构(矢量数据结构部分)

数据结构05

第五章线性表和串习题 5.1若将顺序表中记录其长度的分量listlen改为指向最后一个元素的位置last,在实现各基本运算时需要做那些修改? 5.2试用顺序表表示较多位数的大整数,以便于这类数据的存储。请选择合适的存放次序,并分别写出这类大数的比较、加、减、乘、除等运算,并分析算法的时间性能。 5.3试用顺序表表示集合,并确定合适的约定,在此基础上编写算法以实现集合的交、并、差等运算,并分析各算法的时间性能。 5.4假设顺序表L中的元素递增有序,设计算法在顺序表中插入元素x,要求插入后仍保持其递增有序特性,并要求时间尽可能少。 5.5假设顺序表L中的元素递增有序,设计算法在顺序表中插入元素x,并要求在插入后也没有相同的元素,即若表中存在相同的元素,则不执行插入操作。 5.6设计算法以删除顺序表中重复的元素,并分析算法的时间性能。 5.7假设顺序表L中的元素按从小到大的次序排列,设计算法以删除表中重复的元素, 并要求时间尽可能少。要求: (1)对顺序表(1,1,2,2,2,3,4,5,5,5,6,6,7,7,8,8,8,9)模拟执行本算法,并统计移动元素的次数。 (2)分析算法的时间性能。 5.8若递增有序顺序表A、B分别表示一个集合,设计算法求解A=A B,并分析其时间性能。 5.9递增有序顺序表A、B分别表示一个集合,设计算法求解A=A-B,并分析其时间性能。 5.10假设带头结点的单链表是递增有序的,设计算法在其中插入一个值为x的结点,并保持其递增特性。 5.11设计算法以删除链表中值为x的元素结点。 5.12设计算法将两个带头结点的单循环链表A,B首尾相接为一个单循环链表A。 5.13假设链表A、B分别表示一个集合,试设计算法以判断集合A是否是集合B的子集,若是,则返回1,否则返回0,并分析算法的时间复杂度。 5.14假设递增有序的带头结点的链表A、B分别表示一个集合,试设计算法以判断集合A是否是集合B的子集,若是,则返回1,否则返回0,并分析算法的时间复杂度。 5.15假设链表A、B分别表示一个集合,设计算法以求解C= A∩B,并分析算法的时间复杂度。 5.16假设递增有序的带头结点的链表A、B分别表示一个集合,设计算法以求解C= A ∩B,并分析算法的时间复杂度。 5.17假设递增有序的带头结点的链表A、B分别表示一个集合,设计算法以求解A= A ∩B,并分析算法的时间复杂度。 5.18假设递增有序的带头结点的单循环链表A、B分别表示两个集合,设计算法以求解A= A∪B,并分析算法的时间复杂度。 5.19假设链表A、B分别表示两个集合,设计算法以求解C= A∪B,并分析算法的时间复杂度。 5.20设计算法将两个递增有序的带头结点的单链表A、B合并为一个递增有序的带头结点的单链表,并要求算法的时间复杂度为两个表长之和的数量级。 5.21设计算法将链表L就地逆置,即利用原表各结点的空间实现逆置。

GIS矢量数据和栅格数据知识点

栅格数据和矢量数据 矢量数据 定义: ?矢量数据结构通过记录空间对象的坐标及空间关系来表达空间对象的位置。 ?点:空间的一个坐标点; ?线:多个点组成的弧段; ?面:多个弧段组成的封闭多边形; 获取方法 ?定位设备(全站仪、GPS、常规测量等) ?地图数字化 ?间接获取 ●栅格数据转换 ●空间分析(叠置、缓冲等操作产生的新的矢量数据) 矢量数据表达考虑内容 ?矢量数据自身的存储和管理 ?几何数据和属性数据的联系 ?空间对象的空间关系(拓扑关系) 矢量数据表达 ?简单数据结构 ?拓扑数据结构 ?属性数据组织 矢量数据结构编码方式 实体式 索引式 双重独立式 链状独立 栅格数据 定义 以规则像元阵列表示空间对象的数据结构,阵列中每个数据表示空间对象的属性特征。或者说,栅格数据结构就是像元阵列,每个像元的行列号确定位置,用像元值表示空间对象的类型、等级等特征。 每个栅格单元只能存在一个值。 对于栅格数据结构 ●点:为一个像元 ●线:在一定方向上连接成串的相邻像元集合。 ●面:聚集在一起的相邻像元集合。 获取方式: ●遥感数据 ●图片扫描数据 ●矢量数据转换 ●手工方式 栅格数据坐标系 栅格数据压缩编码方案 栅格数据的分层

栅格数据的组织方法 栅格数据特点 编码方式: 直接编码—无压缩编码 链式编码—便界编码 游程长度编码 块式编码 四叉树编码 矢量数据优点: ?表示地理数据的精度较高 ?严密的数据结构,数据量小 ?完整的描述空间关系 ?图形输出精确美观 ?图形数据和属性数据的恢复、更新、综合都能实现 ?面向目标,不仅能表达属性,而且能方便的记录每个目标的具体属性信息缺点: ?数据结构复杂 ?矢量叠置较为复杂 ?数学模拟比较困难 ?技术复杂,特别是软硬件 栅格数据优点: ?数据结构简单 ?空间数据的叠置和组合方便 ?各类空间分析很易于进行 ?数学模拟方便 缺点: ?图形数据量大 ?用大像元减少数据量时,精度和信息量受损 ?地图输出不美观 ?难以建立网络连接关系 ?投影变换比较费时 ?矢量数据结构是一种常见的图形数据结构,它用一系列有序的x、y坐标对表示地理实体的空间位置。 ?矢量结构的特点:属性隐含,定位明显 ?矢量型数据结构按其是否明确表示各地理实体的空间相互关系可分为实体型和拓扑型两大类。 实体型与拓扑型数据结构比较 ?两者都是目前最常用的数据结构模型 实体型代表软件为MapInfo 拓扑型代表软件为ARC/INFO ?它们各具特色 实体型虽然会产生数据冗余和歧异,但易于编辑。 拓扑型消除了数据的冗余和歧异,但操作复杂,甚至会产生新的数据冗余。

05哈工程数据结构真题

哈尔滨工程大学 05年招收硕士研究生入学考试试题 科目名称:数据结构试题编号:429 共3页一.判断题(每小题1分,共10分) 1.若一个算法中的语句频度之和为T(n)=1024n+4nlogn,则算法的时间复杂度为0(nlogn) 2.串是一种特殊的线性表。 3.两个栈共享一个向量空间的优点是其中一个栈可用该空间一半或一半以上。 4.广义表是非线性数据结构,因为表中的元素可以是子表。 5.二叉树的中序序列中,结点A在结点B之前的条件是A是B的祖先。6.若一个有向图的拓扑排序没有包括全部顶点,则说明该图存在有向回路。7.具有几个顶点e条边的无向图,若用邻接矩阵作为存储结构,则求任一顶点的度数的时间复杂度为0(e). 8.哈希法既是一种查找方法,又是一种存储方法。 9.希尔排序是属于插入排序的改进方法。 10.在单链表上可以实现简单选择排序,但难以实现堆(选择)排序。二.填空题(每小题2分,共20分) 1.在字符串S=“structure”中,以t为首字符的子串有——个。 2.N阶的下三角阵按行序为主序存储,每个元素占L个单元,若已知首地址为loc(A00 ),则元素Aij(0≤j≤i≤n-1)的存储地址loc(Aij)为——

3.已知一个栈的入栈序列是1,2,3,……,n,其输出序列为P1,P2,P3,……,Pn。若P1=n,则Pi为—— 4.已知广义表LS=(a,(b,c,d),e)运用head和tail函数取出LS中的原子b的运算是—— 5.在一棵具有h层的满三叉树中,结点总数为—— 6.已知在一棵含有n个结点的树中,只有度为3和度为0的结点,则树中度为0的结点数为—— 7.设树T的度为4,其中度为1,2,3,4的结点树分别为4,2,1,1,则听众叶子数为—— 8.在含有20个关键字的4阶B-树中进行查找,至多访问——个结点。9.将m个互为冲突(具有相同的哈希地址)的记录存入哈希表,处理冲突采用伪随机探测法。最多需要探测——次。 10.将30个记录分成5块,进行分块查找,平均查找长度是——。 三,单选题(每小题2分,共30分) 1.算法是指—— A.可执行程序。 B。问题求解的计算方法。C。系统软件。D。解决问题的有限运算序列。 2.从逻辑上可以把数据结构分成——结构。 A.动态和静态 B.紧凑和非紧凑 C.线性和非线性 D.内部和外部 3.将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度

青岛大学05数据结构

青岛大学2005年硕士研究生入学考试试题 学科代码:407 科目名称:数据结构(共4页)请考生写明题号,将答案全部答在答题纸上,答在试卷上无效 一.单项选择题(本大题共10道小道小题,每小题3分,共30分) 1. 算法的时间复杂度取决于【】 A. 问题的规模 B. 待处理数据的初始状态 C. 软件和硬件的组合 D. 操作系统 2. 向一个栈顶指针为top的链栈中插入一个s结点,则执行【】 A. top->next=s; B. s->next=top->next; top->next=s; C. s->next=top; top=s; D. s->next=top; top=top->next; 3. 广义表((a))的表头是【】 A. a B. (a) C. () D. ((a)) 4. 由带权为8、2、5、7的叶子结点构造一棵哈夫曼树,该树的带权路径长度为【】 A. 37 B. 32 C. 46 D. 43 5. 采用邻接表存储的图,其BFS算法类似于二叉树的【】 A. 中序遍历 B. 先序遍历 C. 后序遍历 D. 按层遍历 6. 在非空m阶B_树上,除根结点之外的所有其他非终端结点【】 A. 至少有??2/m棵子树 B.至多有??2/m棵子树 C. 至少有??2/m棵子树 D. 至多有??2/m棵子树 7. 对线性表进行顺序查找时,要求线性表的存储结构为【】 A. 散列存储 B. 顺序存储或者链式存储 C. 压缩存储 D. 索引存储 8. 在关键字“基本有序”的情况下,最佳排序算法为【】 A. 快速排序 B. 冒泡排序 C. 直接插入排序 D. 基数排序 9. 折半查找法和二叉排序树的时间性能【】 A. 与处理数据量有关 B. 相同 C. 不相同 D. 不确定 10. 串是一种特殊的线性表,其特殊性体现在【】 A. 可以顺序存储 B. 数据元素是一个字符 C. 可以链接存储 D. 数据元素可以是多个字符 二、填空题(本大题共10小题,每小题2分,共20分) 1. 在具有n个单元的循环队列中,队满时共有____________个元素。 2. 单链表中设置头结点的目的是____________。 3. 消除递归_____________需要使用栈。 4. 在具有n(n≥1)个结点的k叉树中,有_____________个空指针。 5. 深度为5的二叉树至多有_________个结点。 6. 一个连通图的__________是一个极小连通子图。 7. 对稀疏图进行DFS遍历时,应该采用___________作为其存储结构。 8. 在哈希表中,装填因子α越大,则_______________________。

在ArcGIS下基于Python的矢量数据处理方法

测绘技术装备 第18卷 2016年第4期 技术交流 63 在ArcGIS 下基于Python 的矢量数据处理方法 林璐 王爽 李海泉 侯兴泽 马鹏刚 (国家测绘地理信息局第二地形测量队 陕西西安 710054) 摘 要:在ArcGIS 中地理处理可以通过Python 脚本语言来具体实现。通过Python 串联Arcgis 的地理处理工具,实现工作流自动化完成,同时,实践批处理过程,解放人工的机械重复工作,提高效率,进而保证数据质量。现以地形图中示坡线的正确、严谨表达为实践案例,介绍了在ArcGIS 下利用Python 处理矢量数据,为矢量数据处理的高效、自动化提供解决方法。 关键词:Python ARCGIS 地理处理 示坡线 1 引言 地理处理是GIS 用户应用的重要组成部分,ArcGIS 的ArcToolbox 窗口为GIS 用户提供了数百个地理处理。对于数据处理人员在使用ArcGIS 地理处理工具时,就会遇到这样的难题,如何将几个简单的地理处理工具串联起来,自动化地完成一个简单工作流,使得人工操作转换为自动化的程序批处理 过程[1] 。 Python 是一种不受局限、跨平台的开源编程语言,它功能强大且简单易学。同时,它可伸缩程度高,适于大型项目或小型的一次性程序(称为脚本), 并且可嵌入(使ArcGIS 可脚本化)。目前,Python 已延伸到ArcGIS 中,成为了一种用于进行数据分析、数据转换、数据管理和地图自动化的语言。运用 Python 语言可以实现对地理数据的批处理,从而有 助于提高工作效率[2] 。 2 开发案例说明 示坡线,是指示斜坡降落的方向线,它与等高线垂直相交。一般表示在谷地、山头、鞍部、图廓边及斜坡方向不易判读的地方。凹地的最高、最低 一条等高线上也应表示示坡线[3] 。在测绘4D 产品之一的数字线划图(DLG)中,示坡线一般以有向点或有向线(长度为定值的线段)的方式表达。其中,有向点应严格捕捉相应等高线,通过填写要素角度属性项表达所示方向;有向线为线段,起始节点应严格捕捉相应等高线,终止节点指向所示方向,线段长度为规范要求长度。 图1 山丘、山峰和盆地、洼地的示坡线示意图 一般在DLG 制作过程中,特别是中小比例尺地形图,通常利用立体测图系统,在恢复立体影像相对模型的情况下,人工判断地貌,并采集示坡线。采集时要求在对应等高线采集第一点,沿斜坡的方向采集第二点。为提高生产效率及生产工序技术要求,此时采集的示坡线,不符合前述DLG 拓扑规范要求。存在未严格捕捉等高线,造成悬挂和相交的拓扑问题;或示坡线要素长度不定,不符合技术要求;亦或示坡线采集图形上看正确,实际上刚好与要求相反,是由斜坡降落方向向等高线采集。这些情况致使下工序矢量数据编辑处理时,需要人工核对、修改,工作量大且繁琐(尤其是在沙漠、特殊丘陵地区,1幅1∶10000比例尺地形图可能需要上千个示坡线表示地貌形态),如果作业人员责任心不足还易造成质量隐患。 3 处理方案设计 3.1 方案设计思路 数据要素处理的关键是两点:一是解决拓扑问题,二是实现示坡线角度正确表达。因此解决思路是:首先,要满足拓扑要求,即相应要素之间严格

Arcgis矢量数据处理案例

. Arcgis空间数据处理案例 空间数据处理 (2) 第1步裁剪要素 (2) 第2步拼接图层 (4) 第3步要素融合 (5) 第4步图层合并 (7) 第5步图层相交 (9) 定义地图投影 (10) 第6步定义地理坐标系统 (10) 第7步投影变换,(地理坐标系->北京1954坐标系转换->西安80坐标系) (11) 补充:图层相减,计算面积 (12)

空间数据处理 ●数据:云南县界.shp; Clip.shp西双版纳森林覆盖.shp 西双版纳县界.shp ●步骤: 将所需要的数据下载后,解压到到 e:\gisdata, 设定工作区:在ArcMap中执行菜单命令:<地理处理>-><环境>,在“环境设置”选项页里, 点击“工作空间”按钮,在工作空间对话框中的常规设置选项中,设定“临时工作空间”为 e:\gisdata 第1步裁剪要素 ◆在ArcMap中,添数据GISDATA\云南县界.shp,添加数据GISDATA\Clip.shp (Clip 中有四 个要素) ◆激活Clip图层。选中Clip图层中的一个要素,注意确保不要选中“云南县界”中的要素!

点击打开ArcToolbox, 指定输出要素类路径及名称,这里请命名 为“云南县界_Clip11” 指定输入类:云南县界 指定剪切要素:Clip(必须是多边形要素) 依次选中Clip主题中其它三个要素,重复以上的操作步骤,完成操作后将得到共四个图层(“云 南县界_Clip11” , “云南县界_Clip12”,“云南县界_Clip21”,“云南县界_Clip22” )。 注:1.观察剪切后面积是否有变化; 2.如果用split是否可以,如可以,需要怎么做?(用文本型字段进行split)

(完整word版)栅格数据结构和矢量数据结构空间分析

一、矢量、栅格数据结构的优缺点 矢量数据结构可具体分为点、线、面,可以构成现实世界中各种复杂的实体,当问题可描述成线或边界时,特别有效。矢量数据的结构紧凑,冗余度低,并具有空间实体的拓扑信息,容易定义和操作单个空间实体,便于网络分析。矢量数据的输出质量好、精度高。 矢量数据结构的复杂性,导致了操作和算法的复杂化,作为一种基于线和边界的编码方法,不能有效地支持影像代数运算,如不能有效地进行点集的集合运算(如叠加),运算效率低而复杂。由于矢量数据结构的存贮比较复杂,导致空间实体的查询十分费时,需要逐点、逐线、逐面地查询。矢量数据和栅格表示的影像数据不能直接运算(如联合查询和空间分析),交互时必须进行矢量和栅格转换。矢量数据与DEM(数字高程模型)的交互是通过等高线来实现的,不能与DEM 直接进行联合空间分析。 栅格数据结构是通过空间点的密集而规则的排列表示整体的空间现象的。其数据结构简单,定位存取性能好,可以与影像和DEM数据进行联合空间分析,数据共享容易实现,对栅格数据的操作比较容易。 栅格数据的数据量与格网间距的平方成反比,较高的几何精度的代价是数据量的极大增加。因为只使用行和列来作为空间实体的位置标识,故难以获取空间实体的拓扑信息,难以进行网络分析等操作。栅格数据结构不是面向实体的,各种实体往往是叠加在一起反映出来的,因而难以识别和分离。对点实体的识别需要采用匹配技术,对线实体的识别需采用边缘检测技术,对面实体的识别则需采用影像分类技术,这些技术不仅费时,而且不能保证完全正确。

通过以上的分析可以看出,矢量数据结构和栅格数据结构的优缺点是互补的(图2-4-1),为了有效地实现GIS中的各项功能(如与遥感数据的结合,有效的空间分析等)需要同时使用两种数据结构,并在GIS中实现两种数据结构的高效转换。 在GIS建立过程中,应根据应用目的和应用特点、可能获得的数据精度以及地理信息系统软件和硬件配置情况,选择合适的数据结构。一般来讲,栅格结构可用于大范围小比例尺的自然资源、环境、农林业等

计05期中数据结构试题及答案

数据结构期中试题 一.单项选择题(每项选择2分,共48分) 1.在数据结构中,从逻辑上可以把数据结构分成___C____。 A.动态结构和静态结构B.紧凑结构和非紧凑结构 C.线性结构和非线性结构D.内部结构和外部结构 2.线性表是A。 (A) 一个有限序列,可以为空;(B) 一个有限序列,不能为空; (C) 一个无限序列,可以为空;(D) 一个无序序列,不能为空。 3.对顺序存储的线性表,设其长度为n,在任何位置上插入或删除操作都是等概率的。插入一个元素时平均要移动表中的 B 个元素。 (A) n/2 (B) n+1/2 (C) n -1/2 (D) n 4.用链表表示线性表的优点是 C 。 (A)便于随机存取 (B)花费的存储空间较顺序存储少 (C)便于插入和删除 (D)数据元素的物理顺序与逻辑顺序相同 5.某链表中最常用的操作是在最后一个元素之后插入一个元素和删除最后一个元素,则采用 C 存储方式最节省运算时间。 (A)单链表 (B)双链表 (C)带尾指针的单循环链表 (D)双循环链表 6线性表的顺序存储结构是一种_A____的存储结构,线性表的链式存储结构是一种_____的存储结构。 A.随机存取B.顺序存取C.索引存取D.散列存取 7、若某线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用 B 存储方式最 节省运算时间。 (A) 单链表(B) 顺序表(C) 双链表(D) 单循环链表 8.算法分析的目的是___C___,算法分析的两个主要方面是__A____。 ①A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 C.分析算法的效率以求改进 D.分析算法的易懂性和文档性 ②A.空间复杂性和时间复杂性 B.正确性和简明性 C.可读性和文档性 D.数据复杂性和程序复杂性 9、栈的特点是①B ,栈和队列都是 C ②。 ①、A、先进先出B、后进先出C、进优于出D、出优于进 ②、A、顺序存储的线性结构B、链式存储的线性结构 C、操作受限的线性结构 D、操作受限的非线性结构 10、若进队列的序列为1,2,3,4,则 D 是一个出队序列。 A、3,2,1,4 B、3,2,4,1 C、4,2,3,1 D、1,2,3,4 11、设有一空栈,现有输入序列为1,2,3,4,5,经过PUSH,PUSH,POP,PUSH,POP,PUSH,PUSH后, 输出序列为 C 。 A、5,4,3,2,1 B、2,1 C、2,3 D、3,4 12、若广义表K满足head(K)=tail(K),则K为 ( B ) A.( ) B.( ( ) ) C. ( () , () ) D.( (),(),() )

矢量、栅格数据结构的优缺点

§2.4 矢量栅格一体化数据结构 一、矢量、栅格数据结构的优缺点 矢量数据结构可具体分为点、线、面,可以构成现实世界中各种复杂的实体,当问题可描述成线或边界时,特别有效。矢量数据的结构紧凑,冗余度低,并具有空间实体的拓扑信息,容易定义和操作单个空间实体,便于网络分析。矢量数据的输出质量好、精度高。 矢量数据结构的复杂性,导致了操作和算法的复杂化,作为一种基于线和边界的编码方法,不能有效地支持影像代数运算,如不能有效地进行点集的集合运算(如叠加),运算效率低而复杂。由于矢量数据结构的存贮比较复杂,导致空间实体的查询十分费时,需要逐点、逐线、逐面地查询。矢量数据和栅格表示的影像数据不能直接运算(如联合查询和空间分析),交互时必须进行矢量和栅格转换。矢量数据与DEM(数字高程模型)的交互是通过等高线来实现的,不能与DEM 直接进行联合空间分析。 栅格数据结构是通过空间点的密集而规则的排列表示整体的空间现象的。其数据结构简单,定位存取性能好,可以与影像和DEM数据进行联合空间分析,数据共享容易实现,对栅格数据的操作比较容易。 栅格数据的数据量与格网间距的平方成反比,较高的几何精度的代价是数据量的极大增加。因为只使用行和列来作为空间实体的位置标识,故难以获取空间实体的拓扑信息,难以进行网络分析等操作。栅格数据结构不是面向实体的,各种实体往往是叠加在一起反映出来的,因而难以识别和分离。对点实体的识别需

要采用匹配技术,对线实体的识别需采用边缘检测技术,对面实体的识别则需采用影像分类技术,这些技术不仅费时,而且不能保证完全正确。 通过以上的分析可以看出,矢量数据结构和栅格数据结构的优缺点是互补的(图2-4-1),为了有效地实现GIS中的各项功能(如与遥感数据的结合,有效的空间分析等)需要同时使用两种数据结构,并在GIS中实现两种数据结构的高效转换。 在GIS建立过程中,应根据应用目的和应用特点、可能获得的数据精度以及地理信息系统软件和硬件配置情况,选择合适的数据结构。一般来讲,栅格结构可用于大范围小比例尺的自然资源、环境、农林业等区域问题的研究。矢量结构用于城市分区或详细规划、土地管理、公用事业管理等方面的应用。 完

数据结构期末模拟试题05(有答案)

课程测试试题(卷) ----------------------以下为教师填写-------------------- I、命题院(部):数学与计算机科学学院 II、课程名称:数据结构 III、测试学期:20 -20 学年度第学期 IV、测试对象:学院专业级班 V、问卷页数(A4):页 VI、答卷页数(A4):页 VII、考试方式:闭卷(开卷、闭卷或课程小论文,请填写清楚) VIII、问卷内容:(请老师在出题时安排紧凑,填空题象征性的留出一点空格,学生将所有的答案做在答题纸上的规定位置,并写清楚大题、小题的题号) 一、单选题(每题 2 分,共20分) 1.以下数据结构中哪一个是线性结构?( ) A. 有向图 B. 队列 C. 线索二叉树 D. B树 2.在一个单链表HL中,若要在当前由指针p指向的结点后面插入一个由q指 向的结点,则执行如下( )语句序列。 A. p=q; p->next=q; B. p->next=q; q->next=p; C. p->next=q->next; p=q; D. q->next=p->next; p->next=q; 3.以下哪一个不是队列的基本运算?() A. 在队列第i个元素之后插入一个元素 B. 从队头删除一个元素 C. 判断一个队列是否为空 D.读取队头元素的值 4.字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多 可以组成( )个不同的字符串? A.14 B.5 C.6 D.8 5.由权值分别为3,8,6,2的叶子生成一棵哈夫曼树,它的带权路径长度为 ( )。

以下6-8题基于图1。 6.该二叉树结点的前序遍历的序列为( )。 A.E、G、F、A、C、D、B B.E、A、G、C、F、B、D C.E、A、C、B、D、G、F D.E、G、A、C、D、F、B 7.该二叉树结点的中序遍历的序列为( )。 A. A、B、C、D、E、G、F B. E、A、G、C、F、B、D C. E、A、C、B、D、G、F E.B、D、C、A、F、G、E 8.该二叉树的按层遍历的序列为( )。 A.E、G、F、A、C、D、B B. E、A、C、B、D、G、F C. E、A、G、C、F、B、D D. E、G、A、C、D、F、B 9.下面关于图的存储的叙述中正确的是( )。 A.用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 B.用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关 C. 用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关 D.用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 10.设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述 序列出发建堆的结果?( ) A. a,g,h,m,n,p,q,x,z B. a,g,m,h,q,n,p,x,z C. g,m,q,a,n,p,x,h,z D. h,g,m,p,a,n,q,x,z 二、填空题(每空1分,共26分) 1.数据的物理结构被分为_________、________、__________和___________四 种。 2.对于一个长度为n的顺序存储的线性表,在表头插入元素的时间复杂度为 _________,在表尾插入元素的时间复杂度为____________。 3.向一个由HS指向的链栈中插入一个结点时p时,需要执行的操作是 ________________;删除一个结点时,需要执行的操作是 ______________________________(假设栈不空而且无需回收被删除结点)。

矢量数据结构矢量数据结构编码的基本内容

2.3矢量数据结构 地理信息系统中另一种最常见的图形数据结构为矢量结构,即通过记录坐标的方式尽可能精确地表示点、线、多边形等地理实体,坐标空间设为连续,允许任意位置、长度和面积的精确定义,事实上,因为如下原因,也不可能得到绝对精确的值:1、表示坐标的计算机字长有限;2、所有矢量输出设备包括绘图仪在内,尽管分辨率比栅格设备高,但也有一定的步长;3、矢量法输入时曲线选取的点不可能太多;4、人工输图中不可避免的定位误差。 在前面第二章中已知道,矢量数据存储是以隐式关系以最小的存储空间存储复杂的数据。当然这只是相对而言,在地理信息系统中没有绝对“最好”的方法。 2.3.1矢量数据结构编码的基本内容 1、点实体 点实体包括由单独一对x,y坐标定位的一切地理或制图实体。在矢量数据结构中,除点实体的x,y坐标外还应存储其它一些与点实体有关的数据来描述点实体的类型、制图符号和显示要求等。点是空间上不可再分的地理实体,可以是具体的也可以是抽象的,如地物点、文本位置点或线段网络的结点等,如果点是一个与其它信息无关的符号,则记录时应包括符号类型、大小、方向等有关信息;如果点是文本实体,记录的数据应包括字符大小、字体、排列方式、比例、方向以及与其它非图形属性的联系方式等信息。对其它类型的点实体也应做相应的处理。图3—10说明了点实体的矢量数据结构的一种组织方式。

2、线实体 线实体可以定义为直线元素组成的各种线性要素,直线元素由两对以上的x,y坐标定义。最简单的线实体只存储它的起止点坐标、属性、显示符等有关数据。例如,线实体输出时可能用实线或虚线描绘,这类信息属符号信息,它说明线实体的输出方式。虽然线实体并不是以虚线存储,仍可用虚线输出。 弧、链是n个坐标对的集合,这些坐标可以描述任何连续而又复杂的曲线。组成曲线的线元素越短,x,y坐标数量越多,就越逼近于一条复杂曲线,既要节省存储空间,又要求较为精确地描绘曲线,唯一的办法是增加数据处理工作量。亦即在线实体的纪录中加入一个指示字,当起动显示程序时,这个指示字告诉程序:需要数学内插函数(例如样条函数)加密数据点且与原来的点匹配。于是能在输出设备上得到较精确的曲线。不过,数据内插工作却增加了。弧和链的存储记录中也要加入线的符号类型等信息。 线的网络结构。简单的线或链携带彼此互相连接的空间信息,而这种连接信息又是供排水网和道路网分析中必不可少的信息。因此要在数据结构中建立指针系统才能让计算机在复杂的线网结构中逐线跟踪每一条线。指针的建立要以结点为基础。如建立水网中每条支流之间连接关系时必须使用这种指针系统。指针系统包括结点指向线的指针。每条从结点出发的线汇于结点处的角度等,从而完整地定义线网络的拓扑关系。

矢量数据与栅格数据

矢量数据与栅格数据 1.矢量数据 矢量数据主要是指城市大比例尺地形图。此系统中图层主要分为底图层、道路层、单位 层,合理的分层便于进行叠加分析、图形的无逢拼接以实现系统图形的大范围漫游。矢量数据一般通过记录坐标的方式来尽可能将地理实体的空间位置表现的准确无误,显示的图形一般分为矢量图和位图。 矢量数据是计算机中以矢量结构存贮的内部数据。是跟踪式数字化仪的直接产物。在矢量数据结构中,点数据可直接用坐标值描述;线数据可用均匀或不均匀间隔的顺序坐标链来描述;面状数据(或多边形数据)可用边界线来描述。矢量数据的组织形式较为复杂,以弧段为基本逻辑单元,而每一弧段以两个或两个以上相交结点所限制,并为两个相邻多边形属性所描述。在计算机中,使用矢量数据具有存储量小,数据项之间拓扑关系可从点坐标链中提取某些特征而获得的优点。主要缺点是数据编辑、更新和处理软件较复杂。 2..栅格数据 栅格数据是按网格单元的行与列排列、具有不同灰度或颜色的阵列数据。每一个单元(象素)的位置由它的行列号定义,所表示的实体位置隐含在栅格行列位置中,数据组织中的每个数据表示地物或现象的非几何属性或指向其属性的指针。一个优秀的压缩数据编码方案 是:在最大限度减少计算机运算时间的基点上进行最大幅度的压缩。 栅格数据是按网格单元的行与列排列、具有不同灰度或颜色的阵列数据。栅格结构是大小相等分布均匀、紧密相连的像元(网格单元)阵列来表示空间地物或现象分布的数据组织。是最简单、最直观的空间数据结构,它将地球表面划分为大小、均匀、紧密相邻的网格阵列。每一个单元(象素)的位置由它的行列号定义,所表示的实体位置隐含在栅格行列位置中,数据组织中的每个数据表示地物或现象的非几何属性或指向其属性的指针。对于栅格结构:点实体由一个栅格像元来表示;线实体由一定方向上连接成串的相邻栅格像元表示;面实体(区域)由具有相同属性的相邻栅格像元的块集合来表示。

数据结构试题(05)

《数据结构》试题(100分) (供2005级信息管理与信息系统本科专业使用) 学号: 姓名: 座号: 系别: 年级: 专业: 总分合计人: 复核人: 说明:本试卷分为两部分,第I 卷(选择题和判断题)必须在“答题卡”上按规定要求填、 涂;第II 卷直接在试卷上作答。不按规定答题、填涂,一律无效。 第I 卷 一、试题类型:单项选择题(每小题2分,共40分) (类型说明:在每小题列出的四个选项中只有一个选项是符合题目要求的,请选出正确选项并在“答题卡”的相应位置上涂黑。多涂、少涂、错误均无分。) 1. 算法分析的两个主要方面是: ( ) (A) 空间复杂性和时间复杂性 (B) 正确性和简明性 (C) 可读性和文档性 (D) 数据复杂性和程序复杂性 2. 计算机算法指的是: ( ) (A) 计算方法 (B) 排序方法 (C) 解决问题的有限运算序列 (D) 调度方法 3. 数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称为:( ) (A )存储结构 (B )逻辑结构 (C )顺序存储结构 (D )链式存储结构 4.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是 。 ( ) (A )110 (B )108 (C )100 (D )120 5. 链接存储的存储结构所占存储空间: ( ) (A )分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针 (B )只有一部分,存放结点值 (C ) 只有一部分,存储表示结点间关系的指针 (D ) 分两部分,一部分存放结点值,另一部分存放结点所占单元数 6. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址: ( ) (A )必须是连续的 (B )部分地址必须是连续的 (C )一定是不连续的 (D )连续或不连续都可以 7. 栈中元素的进出原则是: ( ) (A)先进先出 (B)后进先出 (C)栈空则进 (D)栈满则出 8. 若已知一个栈的入栈序列是1,2,3,…,n ,其输出序列为p1,p2,p3,…,pn ,若p1=n ,则pi 为: ( ) (A) i (B) n=i (C) n-i+1 (D) 不确定 9. 串是一种特殊的线性表,其特殊性体现在: ( ) (A)可以顺序存储 (B)数据元素是一个字符 (C)可以链式存储 (D)数据元素可以是多个字符 10. 设串s1=‘ABCDEFG’,s2=‘PQRST’,函数con(x,y)返回x 和y 串的连接串,subs(s, i, j)返回串s 的从序号i 开始的j 个字符组成的子串,len(s)返回串s 的长度,则con(subs(s1, 2, len(s2)), subs(s1, len(s2), 2))的结果串是: ( ) (A)BCDEF (B)BCDEFG (C)BCPQRST (D)BCDEFEF 11. 假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地址为 。(无第0行第0列元素) ( )

矢量数据的获取与处理

第3章矢量数据与栅格数据的获取及处理 导读:GIS项目中费用最大的部分是数据库建设,即基础地理信息的获取与处理,这其中就包括矢量数据和栅格数据的获取与处理,例如遥感影像数据现已作为地理信息系统的重要数据来源。本章分别介绍了矢量数据的获取与处理以及栅格数据的获取与处理,以及他们的应用。并在最后一节介绍了矢栅一体化数据结构的基本概念。 3.1矢量数据的获取与处理方法 3.1.1矢量数据的概念 矢量数据(Vector Data)即在直角坐标系中,用X、Y坐标表示地图图形或地理实体的位置的数据。矢量数据一般通过记录坐标的方式来尽可能将地理实体的空间位置表现的准确无误。 在计算机地图制图中,各地图图形元素在二维平面上的矢量数据表示为:点——用一对(x,y)坐标表示; 线——用一串有序的(x,y)坐标对表示; 面——用一串有序的但首尾坐标相同的(x,y)坐标对表示其轮廓范围。 地图数据与其他大多数由计算机处理的科学数据是极其不同的。大部分地图数据都是反映制图现象的地理分布,故具有定位的性质,也称这类地图数据为空间数据(或几何数据)。空间数据可反映点、线和面状物体的定位特性。还有一部分地图数据是用来描述制图现象的质量和数量特征,如哪是河流,哪是道路,哪是居民点以及它们的名称和其他有关的特征描述等,这类数据通常称之为属性数据。任何地图数据都有时间性,即现势性,这是显而易见的。 3.1.2几何数据的获取 几何数据是根据给定各要素相对位置或绝对位置的坐标来描述的。其获取的方法主要有:

1)由外业测量获得,如数字测图。野外实地测量等获取的数据可转换后直接进入GIS的地理数据库,以便于进行实时的分析和进一步的应用。GPS所获取的数据也是GIS的重要数据源。 2)由栅格形式的空间数据转换获得。栅格数据结构向矢量数据结构的转换又称为矢量化。如卫星测地、扫描数字化仪扫描、航摄像片等。可以用此类数据转化为矢量数据。 基于图像数据的矢量化方法: ①二值化:线画图形扫描后产生图像栅格数据,这些数据是按0~255的不同灰度值量度的,将这种256级不同的灰度压缩到2个灰度形成二值图,即0和1两级灰度图。 ②细化:细化是消除线画横断面栅格数的差异,使得每一条线只保留代表其轴线或周围轮廓线位置的单个栅格的宽度。对于栅格线画的细化方法,可分为“剥皮法”和“骨架法”。 ③跟踪:跟踪的目的是将细化处理后的栅格数据转化为从节点出发的线段或闭合的线条,并以矢量形式存储线段的坐标。跟踪时,从起始点开始,根据八个邻域进行搜索下一个相邻点的位置,记录坐标,直到完成全部栅格数据的矢量化。 3)对现有地图跟踪数字化获得,将现有的地图图形离散化为数据。 跟踪数字化是目前应用最广泛的一种地图数字化方式,是通过记录数字化板上点的平面坐标来获取矢量数据的。其基本过程是:将需数字化的图件(地图、航片等)固定在数字化板上,然后设定数字化范围、输入有关参数、设置特征码清单、选择数字化方式(点方式和流方式等),就可以按地图要素的类别分别实施图形数字化了。 由于跟踪数字化本身几乎不需要GIS的其它计算功能,所以跟踪数字化软件往往可以与整个GIS系统脱离开,因而可单独使用。

GIS矢量数据分析与栅格数据分析实验完整版

G I S矢量数据分析与栅 格数据分析实验 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

本科学生实验报告 姓名尹永义学号 专业地理科学班级 2014B _ 实验课程名称地理信息系统概论(实验) 实验名称矢量数据分析与栅格数据分析 指导教师及职称速绍华(讲师) 开课学期 2014 _至_ 2015_学年_下学期云南师范大学旅游与地理科学学院编印

3、实验理论依据或知识背景: 矢量数据分析矢量数据以点、线和面空间要素为输入数据。 分析结果的准确性取决于空间特征的位置及形状的准确性。 拓扑关系是一些矢量数据分析(如建立缓冲区和叠置分析)的一个因素。 基于邻近(Proximity)概念,建立缓冲区可把地图分为两个区域:一个区域位于所选地图要素的指定距离之内,另一个区域在指定距离之外。 在指定距离之内的区域称为缓冲区。 围绕点建立缓冲区产生圆形缓冲区。围绕线建立缓冲区形成一系列围绕每条线段的长条形缓冲带。围绕多边形建立缓冲区则生成由该多边形边 界向外延伸的缓冲区。 对线要素建立缓冲区未必在线两侧都有缓冲区,可以只在线的左侧或右 侧建立缓冲区。 缓冲距离(又叫缓冲大小)未必为常数,可以根据给定字段取值而变 化。 缓冲区边界也可以被融合掉,使得缓冲区之间没有叠置区。 地图叠置操作是将两个要素图层的几何形状和属性组合在一起,生成新 的输出图层。 输出图层的几何形状代表来自各输入图层的要素的几何交集。 输出图层的每个要素包含所有输入图层的属性组合,而这种组合不同于 其邻域。 所有叠置方法都是基于布尔连接符的运算,即AND、OR 和 XOR。 若使用 AND 连接符,则此叠置操作为求交(Intersect)。 若使用 OR 连接符,则此叠置操作称为联合(Union)。 若使用 XOR 连接符,则此叠置操作称为对称差异(Symmetrical Difference)或差异(Difference)。 若使用以下表达式 [(Input Layer)AND(Identity Layer)] OR (Input Layer),则该叠置操作称为识别(Identity)或减去 (Minus)。 模式分析是关于二维空间点要素空间分配的研究。 在整体水平上,模式分析可以揭示某分布模式是随机、离散还是集聚 的。 在局部水平上,模式分析可以检测出分布模式中是否含有高值或低值的局部集聚。 模式分析包括点模式分析、量测空间自相关的莫兰指数(Moran’s I)和量测高/低聚集度的G 统计量。 栅格数据分析 栅格数据分析是基于栅格像元和栅格的。 栅格数据分析能在独立像元、像元组或整个栅格全部像元的不同层次上进行。 一些栅格数据运算使用单一栅格,而另一些则使用两个或更多栅格数 据。

数据结构 模拟题05

“数据结构”课程终结考试 模拟题(5) 课程编号:BWCST2013学籍号:____________________ 学习中心:________________姓名:____________________ 注意事项:1、本试卷满分100分,考试时间120分钟; 2、本试卷为闭卷考试,请将答案一律写在答题纸上。 一、单选题(每题 2 分,共30分) 1. 抽象数据类型的三个组成部分分别为_______。 A. 数据对象、数据关系和数据操作 B. 数据元素、逻辑结构和存储结构 C. 数据项、数据元素和数据类型 D. 数据元素、逻辑结构和数据类型 2.通过构建有序序列,将待排序的数据,在已排好序的序列中从后向前扫描,找到其相应位置并进行插入操作,这是_______排序的基本思想。 A. 直接插入排序 B. 冒泡排序 3. 在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是 ___: (A)访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n) (B)在第i个结点后插入一个新结点(1≤i≤n) (C)删除第i个结点(1≤i≤n) (D)将n个结点从小到大排序

4. 线性表若采用顺序存储结构时,要求内存中可用存储单元的地址 ___: (A)必须是连续的 (B)部分地址必须是连续的 (C)一定是不连续的 (D)连续或不连续都可以 5. 任何一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序_______。 A. 不发生改变 B. 发生改变 C. 不能确定 6. 二叉树是非线性数据结构,所以 ___。 (A)它不能用顺序存储结构存储 (B)它不能用链式存储结构存储; (C)顺序存储结构和链式存储结构都能存储 (D)顺序存储结构和链式存储结构都不能使用 7. 在无向图中,一个顶点的度是指图中_______。 A.通过该顶点的简单路径数 B. 与该顶点相邻接的顶点数 C.通过该顶点的回路数 8. 采用顺序存储结构,长度为n的线性表,在其第i个位置插入一个新元素算法的时间复杂度_______。 A. O(nlog2n) B.O(1) C. O(n) D.O(n2) 9. 两个字符串相等的充要条件是 ___。 (A)两个字符串的长度相等 (B)两个字符串中对应位置上的字符相等 (C)同时具备(A)和(B)两个条件

矢量数据表示

§2.2 矢量数据结构 三、矢量数据表示 在GIS中,矢量数据表示时应考虑以下问题: 1)矢量数据自身的存贮和处理。 2)与属性数据的联系。 3)矢量数据之间的空间关系(拓扑关系)。 矢量数据的表示方法多种多样,但基本上类似,可触类旁通。下面分别介绍矢量数据的简单数据结构和拓扑数据结构。 (一)简单数据结构 矢量数据的简单数据结构分别按点、线、面三种基本形式来描述(图2-2-2)。 图中有关说明如下: 1、标识码:按一定的原则编码,简单情况下可顺序编号。标识码具有唯一性,是联系矢量数据和与其对应的属性数据的关键字。属性数据单独存放在数据库中。 2、点结构中的X,Y坐标:是点实体的定位点,如果是有向点,则可以有两个坐标对。

3、线结构中的坐标对数n:是构成该线(链)的坐标对的个数。X,Y坐标串是构成线(链)的矢量坐标,共有n对。也可把所有线(链)的X,Y坐标串单独存放,这时只要给出指向该链坐标串的首地址指针即可。 4、面结构是链索引编码的面(多边形)的矢量数据结构,链数n指构成该面(多边形)的链的数目。链标识码集指所有构成该面(多边形)的链的标识码的集合,共有n个。 这种结构具有结构简单、直观、易实现以实体为单位的运算和显示的优点。由于面结构建立了链索引,一个面(多边形)就可由多条链构成,每条链的坐标可由线(链)的矢量数据结构获取。这种方法可保证多边形公共边的唯一性;但多边形的分解和合并不易进行;邻域处理比较复杂,需追踪出公共边;在处理“洞”或“岛”之类的多边形嵌套问题时较麻烦,需计算多边形的包含等。 由于拓扑关系简单,这种数据结构主要用于矢量数据的显示、输出,以及一般的查询和检索。 (二)拓扑数据结构 具有拓扑关系的矢量数据结构就是拓扑数据结构,拓扑数据结构是GIS的分析和应用功能所必需的。拓扑数据结构的表示方式没有固定的格式,还没有形成标准,但基本原理是相同的。 1、拓扑元素 矢量数据可抽象为点(结点)、线(链、弧段、边)、面(多边形)三种要素,即称为拓扑元素。 点(结点):孤立点、线的端点、面的首尾点、链的连接点等。 线(链、弧段、边):两结点间的有序弧段。

相关文档
最新文档