数据结构与算法(一)--基础篇

思维导图


一、数据结构

数据结构是计算机中存储、组织数据的方式。

1.1、基本概念

1.1.1、数据对象:是性质相同的数据元素的集合,是数据的子集。

例如数组:以下的数组里面添加的都是Person类型的对象

1.1.2、数据元素:组成数据对象的基本单位,例如:person1和person2

1.1.3、数据项: 组成数据元素的基本单位,例如以下的name和age

1.2、逻辑结构与物理结构

根据视角不同,可以将数据结构分为2种: 逻辑结构与物理结构

1.2.1、逻辑结构

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

逻辑结构分为:

集合结构:各个数据元素是"平等"的,它们之间没有其他关系。

线性结构:数据元素之间是一对一的关系,常用的线性结构有:线性表,栈,队列,双队列,数组,串。

树形结构:数据元素之间存在着一对多的层次关系,例如:二叉树,B树,哈夫曼树,红黑树等。

图形结构:数据元素是多对多的关系.,例如: 邻近矩阵,邻接表。

1.2.2、物理结构

物理结构分为:顺序存储和链式存储。

顺序存储:需要在内存中先开辟一块连续的存储空间,数据间的逻辑关系和物理关系一致。

链式存储:一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的).


二、算法

算法:是解决特定问题求解步骤的描述

2.1、数据结构与算法的关系:

程序 = 数据结构 + 算法

2.2、时间复杂度:

以下表格为常见的时间复杂度:


2.3、空间复杂度:

并不是整个算法在内存占用空间,而是指的是该算法在实现时所需要的辅助空间就可以

你可能感兴趣的:(数据结构与算法(一)--基础篇)