【数据结构和算法】1绪论

写在前面

本系列博文还是学习小甲鱼系列课程《数据结构与算法》的笔记,目的为了督促自己的学习,顺便记录学习进程!

系列视频地址:https://www.bilibili.com/video/av21828275

鱼C论坛:https://fishc.com.cn/forum.php

大家互相监督吧,有兴趣在下面留言哦!

起始于2018.11.19 于北交大机械楼1003B,计划于年前完成系列课程。


什么是数据结构?

程序设计 = 数据结构 + 算法

再简单说,数据结构就是“关系”;


逻辑结构和物理结构

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

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


四大逻辑结构

集合结构、线性结构、树形结构、图形结构

集合结构:集合结构中的数据元素除了同属于一个集合外,它们之间没有不三不四的关系。

集合结构

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

线性结构

树形结构:树形结构中的数据元素之间,存在一种“一对多”的关系。像3p,4P等。

树形结构

图形结构:图形结构中的元素是“多对多”的关系。

图形结构

物理结构

根据物理结构的定义,实际上就是研究如何把数据元素存储到计算机的存储器中。存储器一般就是说内存

存储器主要是针对内存而言,像硬盘、软盘、光盘等外部存储器的数据组织通常用文件结构来描述。(这里算是科普一下,哈哈)

物理结构有顺序存储结构、链式存储结构

顺序存储结构:把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。顺序结构类似于生活中排队。在c语言中比如:数组。

顺序存储结构

链式存储结构:把数据元素存储在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。

举例:在银行等地方排队,要先领号。在等待的时候,可以随便做自己想做的事情,到处走走。这时候,我只需要关注一下我的前一个号有没有被叫到。叫到了,就该轮到你了!链式存储结构就类似于此!

链式存储结构的数组元素的存储关系不能反映它们的逻辑关系,因此需要用一个指针存放数据元素的地址,这样就可以通过地址找到相关联数据元素的位置。

链式存储结构

finished  2018.11.19  by songpl

★转载请注明出处 

猜你喜欢

转载自blog.csdn.net/plSong_CSDN/article/details/84259576