数据结构(一)----初识数据结构

先给自己打个广告,本人的微信公众号正式上线了,搜索:张笑生的地盘,主要关注嵌入式软件开发,股票基金定投,足球等等,希望大家多多关注,有问题可以直接留言给我,一定尽心尽力回答大家的问题
数据结构(一)----初识数据结构_第1张图片

一 why

数据结构是计算机的基础学科,在我们的应用程序和驱动程序中都是非常重要的,我们知道一个基础公式:程序 = 算法+数据结构,学好了数据结构方便我们写出更优美更高效的程序,好比我们学写字,学习数据结构相当于学习字的结构和章法。
本篇博客是数据结构的一些抽象概念和定义,暂时没有源码,所以阅读起来可能会比较生硬,但是也希望大家克服这个障碍,从本系列的下一章开始会逐渐相关示例代码。

二 what

(1)什么是数据结构

是研究组成数据的数据元素的关系的学科

怎么理解呢?我们可以以我们学习过的化学中的分子结构来类比,我们知道水分子的化学表达式为H2O,一个氧元素和两个氢元素组成,同样的数据结构也是可以理解成不同的元素组成的数据,只是这些元素可以是整形,字符型,结构体等等。
比如图书馆藏书的数据如下,它的数据元素有编号,书名,作者等等

数据结构=图书馆藏书
数据元素=一行的信息
数据项=每一行中的每个列值

数据结构(一)----初识数据结构_第2张图片
(2)研究目的

通过研究元素的关系,帮助我们在开发软件的时候更好的组建数据模型,让数据在内存中的操作更加的流畅高效

数据结构可用形式化语言描述,它是一个二元组

DS = (D, R)     //D为数据元素的集合   R表示D上关系的集合

(3)数据结构的关系

逻辑结构 : 数据元素之间的抽象关系
	集合结构
	线性结构
	树形结构
	图状结构
存储结构 : 在内存中的存储形式
	顺序存储结构 : 
		特点: 在内存中的存储地址是连续的,紧密挨着的
		举例: 数组,malloc分配的内存
	链式存储结构
		优点: 内存空间可以动态分配,增删改查很方便
		缺点: 查找索引的效率比较慢,存储空间占用的比较大
	索引存储结构
	散列存储结构
运算结构 : 对数据进行的操作
	插入
	删除
	查找
	排序

(3.1)四种逻辑结构
数据结构(一)----初识数据结构_第3张图片
(3.2)四种存储结构
顺序存储和链式存储是我们接下来要学习和掌握的重点内容,在本系列文章中主要探讨这两个方面
数据结构(一)----初识数据结构_第4张图片
数据结构(一)----初识数据结构_第5张图片
(3.3)运算关系–增删改查等等
数据结构(一)----初识数据结构_第6张图片
(4)总结
数据结构(一)----初识数据结构_第7张图片

你可能感兴趣的:(数据结构)