web前端:数据结构与算法之绪论

    作者:有梦才好 更新于: 2020-03-16 20:29:55

    Web开发

      一般认为,一个数据结构是由数据元素依据某种逻辑联系组织起来的。对数据元素间逻辑关系的描述称为数据的逻辑结构;数据必须在计算机内存储,数据的存储结构是数据结构的实现形式,是其在计算机内的表示;此外讨论一个数据结构必须同时讨论在该类数据上执行的运算才有意义。一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率。

      什么是数据结构

      简单来说可以解释为:程序设计=数据结构+算法;

      主要是用来研究数据结构的关系,数据元素之间存在的一种或多种特定关系的集合;

      数据结构的分类

      按照传统意义上来讲,数据结构可以分为两类:逻辑结构和物理结构;

      逻辑结构指的是数据对象中数据元素之间的相互关系。

      主要有四种逻辑结构:

      1集合结构:集合结构中的数据元素同属于一个集合体中,但是它们之间没有其他关联;

      2线性结构:线性结构中的数据元素之间是一对一的关系,如同夫妻关系;

      3树形结构:树形结构中的数据元素之间是一对多的关系,如同一个爸爸对多个自己的孩子;

      4图形结构:图形结构中的数据元素之间是多对多的关系,我更倾向于把它理解成一个网状结构,如同在社会中人与人之间都是相互关联的;

      物理结构的存储

      物理结构中的存储器主要是针对内存而言的,硬盘、软盘、光盘等外部存储器的数据组织通常用文件结构来描述;

      数据元素的存储形式有两种:顺序存储和链式存储。

      1顺序存储结构是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的(编程语言的数据结构就是属于这种);

      2链式存储结构是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的;它比顺序存储更灵活(类似银行排号办理业务),但是不能反应其逻辑关系,所以需要用一个指针存放数据元素的地址(指针指向的是下一个地址)—通过地址就可以找到相关联数据元素的位置

      在计算机科学中,数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。

课课家教育

未登录