数据结构

  • 数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关的问题
  • 程序设计 = 数据结构 + 算法
  • 再简单来说数据结构就是关系,就是 数据元素相互之间存在的一种或者多种特定关系的集合】
  • 数据是计算机能够处理的符号形式的总和;数据元素用于指最基本的数据单位,最基本的数据元素就是一个二进制位

逻辑结构

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

集合结构

集合结构中的数据元素除了同属于一个集合外,他们之间没有其他关系;各个数据元素之间都是平等的,他们的共同属性是同属于一个集合;数据结构中集合的关系就类似于数据中的集合

线性结构

线性结构中的数据元素之间是一对一的关系

树形结构

树形结构中的数据元素之间存在一种一对多的层次关系

图形结构

图形结构的数据元素是多对多的关系

数据结构与算法---1

物理结构(存储结构)

物理结构是指数据的逻辑结构在计算机中的存储形式

顺序存储结构

顺序存储结构是把数据元素放在地址连续的存储单元中,其数据间的逻辑关系和物理关系是一致的

链式存储结构

链式存储结构是把数据元素存放在任意的存储单元中,这组存储单元可以是连续的,也可以是不连续的;数据元素的存储关系并不能反映其逻辑关系,因此需要一个指针存放数据元素的地址,这样通过地址就能找到相关联数据元素的位置

逻辑结构是面向问题的,而无力结构是面向计算机的,其基本的目标就是将数据及其逻辑关系存储到计算机当中

数据结构与算法---1

抽象数据类型(ADT)

抽象数据类型是指一个数学模型及定义在该模型上的一组操作;抽象数据类型的定义仅取决于他的一组逻辑特性,而与其在计算机内部如何表示和实现无关

比如说类就是一种最常见的ADT;在超级马里奥中,我们给它定义了几个基本操作,那么一个抽象数据类型定义了:一个数据对象、数据对象中各元素之间的相互关系及对数据元素的操作

算法

算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或者多个操作

算法的特性

  • 输入输出
  • 有穷性:指算法在执行有限的步骤,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成
  • 确定性:算法的每一步骤都具有特定的含义,不会出现二义性
  • 可行性:算法的每一步都必须是可行的,也就是说,每一步都能够通过执行有限的次数完成

算法设计的要求

  • 正确性:算法的正确性是指算法至少应该有输入、输出和加工处理无歧义性、能正确反映问题的需求、能够得到问题的正确答案
  • 可读性:算法的设计目标是为了便于阅读、理解和交流
  • 健壮性:当输入数据不合法的时候,算法也能够做出相关处理,而不是产生异常或莫名其妙的结果
  • 时间效率高和存储率低

相关文章:

  • 2021-05-23
  • 2021-08-29
  • 2021-09-13
  • 2021-12-15
  • 2021-06-29
  • 2021-12-12
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-05-25
  • 2021-06-29
  • 2021-08-20
  • 2021-12-15
  • 2021-11-14
相关资源
相似解决方案