数据结构在实际生活中的应用

栏目:资讯发布:2023-11-29浏览:3收藏

数据结构在实际生活中的应用,第1张

数据结构在实际生活中的应用如下:

1、利用数据结构进行医院病人的信息管理。病人信息管理的基本内容包括:添加,查找,注销删除等。上述基本功能用链式存储比较方便,由于查找,删除都是以姓名或电话号码为关键字进行的,因此要用到双向链表,效率高,以实现各种功能。由此重点和难点是双向链表的建立,查找,删除等基本操作。

2、利用数据结构进行停车场汽车停放的管理。数据结构是根据实验要求停车场数据存储的实际需要而设计的。按照停车场数据存储的需要,定义了一个类似于线性表的结构来存储车辆数据。存储的车辆信息有:上下层信息,停车位编号,车辆型号(大,中,小型),车辆牌照信息,进场小时数,进场时间(日期,月份,年份)。

简要概述

数据结构是一门重要的专业基础课,是计算机理论和应用的核心基础课程。这样的课程设计实践能够培养我们的系统设计与分析能力,不仅有利于我们巩固、提高和融合所学的数据结构知识,更能够培养我们多方面的能力,如综合设计能力、动手能力、团队合作能力、还有创新能力等。

    空间数据结构是指空间数据以什么形式在计算机中的存储和管理。在地理信息系统中,常用的空间数据结构有矢量数据结构和栅格数据结构两种。矢量数据结构是利用几何学中的点、线、面及其组合体来表示地理实体空间分布的一种数据组织方式。栅格数据结构是最简单、最直接的空间数据结构,是指将地球表面划分为大小均匀紧密相邻的网格阵列,每个网格作为一个像元或像素由行、列定义,每个像元的位置由行列号确定,通过单元格中的值表示这一位置地物或现象的非几何属性特征(如高程、温度等)。

    栅格数据可以是数字航空像片、卫星影像、数字高程模型、数字正射影像或扫描的地图。栅格数据多应用于大范围小比例尺的自然资源、环境、农林业等区域问题的研究。最常见的矢量数据包括点数据、线数据、面数据,多应用于城市分区或详细规划、土地管理、公用事业管理等方面。

矢量数据和栅格数据的区别

    栅格数据既能表示离散的地理实体,也能表示连续的地理实体,矢量数据则表示连续的地理实体,相比较而言很适合于空间连续数据,如高程、温度、气象、环境等。矢量与栅格数据结构比较如:

矢量数据:

        结构紧凑,冗余度低;数据结构复杂,各自定义,不便于数据标准化和规范化,数据交换困难;便于描述线或边界;多边形叠置分析困难;利于网络、索引分析,提供有效的拓扑编码,对需要拓扑信息的操作更有效;表达空间变化性能力差;图形显示质量好,精度高。软硬件技术要求高,显示与绘图成本较高。

栅格数据:

    结构简单,易于数据交换;难以表达拓扑;叠置分析和地理现象模拟较易;图形数据量大,数据结构不紧凑,需用压缩技术解决该问题;利于遥感数据的应用和分析,便于图像处理;投影转换困难;输出快速,成本低廉;图形质量较低,图形输出不美观,线条有锯齿,需增加栅格数量来克服,但会增加数据文件。

对于一般的家谱树(一般的多叉树)来说,我们可以很清楚的看出层次关系,树的层数表示代数(一共多少代人),树的最后一层表示最后一代人,由于多叉链表法表示的不方便,因此被迫无奈采用孩子兄弟表示法(二叉链表法)

假设我的家谱是这样的:

           

转换成孩子兄弟表示法后是这样的:

           

      我们要做的是:这时我们要找有多少代人,以及最后以一代人出来。

     如果根据第一个图来说找代数就是树的高度,最后一代人就是树的最后一层,二叉链表法中却不如第一个图来的直观,但是只要把握二叉链表法的本质还是很清晰的,根据孩子兄弟表示法的特性,(看二叉链表法的图)结点3的左子树保存的是其孩子,结点3的右子树保存的是其堂兄弟(对照第一个图来看)。假设我们每一个节点都有一个变量用来存储它是第几代的,那么从结点1开始,我们要找结点10是第几代的话,应该这么做:结点1是第一代,然后经过结点5是第二袋,然后看到结点10是第三代。因为第i个结点的左子树是他的孩子,既然是孩子,代数必须+1,而右子树是和第i结点同辈份的(堂兄弟),因此不能加1。本质来说就是往左走代数+1,向右走代数不变。这就是这题目的思路,通过这个方法你就可以知道有多少代人了,且每个节点都有保存了代数信息(用变量存起来了),再次遍历树把最后一代的结点输出即可。清晰了吗?清晰了我就开始写程序。

数据结构在实际生活中的应用

数据结构在实际生活中的应用如下:1、利用数据结构进行医院病人的信息管理。病人信息管理的基本内容包括:添加,查找,注销删除等。上述基本...
点击下载
热门文章
    确认删除?
    回到顶部