数据结构的含义

相必我们刚学数据结构的时候会有一些疑问吧,我就是的,最开始学到链表那块,我就觉得这不应该就是数组吗,到后面的栈,队列,这不就是一个普普通通的数组只是改变了他输出的位置吗,队列是从输入的位置开始往后输出,而栈是从末尾从头输出,符合队列先进先出,栈先进后出,树那些也是一样的完全可以用数组实现,关于这个问题困惑了我很久,问了老师学长们也不能很好的给我解决这个困惑,后来我开始翻阅书籍终于理解了这个何为数据结构,接下来我就来分享一下我的心得吧!

数据结构的中心是结构而不是数据,结构分为很多种,链式结构,数组(目前学习到的两种)。他们各有各的高处,主要通过逻辑结构和物理结构来描述。而在这种最重要的又是物理结构,它表示数据在计算机内部的存储位置,在计算机的内存中可以在同一块位置也可以分布在不同位置,这就可以确定应该使用什么样子的结构,因为数组是一块连续的存储空间,因此在结构相对比较空的时候使用数组,而在空间相对较满时,无法使用一块连续的空间时优先使用链式结构,数组和链式结构都是数据结构的表达方式,具体情况具体分析,书上的链式结构也仅仅只是一种表达方式而不等于数据结构。这便是我对困惑着我的问题的回答。

而到底什么是数据结构呢

数据结构是一种结构,也是一种思维方式,小到我们每天做的题目上,调用函数其实就是一种数据结构-栈,每次最先调用的函数在最后才会有返回(先进后出)递归的本质也是这样的,在递的时候向栈中存入每一次的数据,在归的时候返回每一次的结果,这也是栈的运用。相信你现在还是不太明白数据结构在之后到底有什么用。那我们从大的问题来看,每个人都在网上买过东西吧,也知道买东西的规则是先付完钱的先发货吧,你看这不就是队列的运用吗,哈哈哈哈数据结构有用吧,再给你看一个例子,我们都上过网吧,在浏览器里打开很多个网站,每次撤销一个网站后,出现在我们眼前的是什么呢,,是这个删除的网站前一个打开的网站,而第一个打开的网站在一次一次撤销后是最后一个出现的,(可能没讲清楚这个网站的顺序,可以自己试着打开网站试试看第一个打开的网站在最后是第几个出现的),这便是我说的那个,数据结构不仅仅是写题更是一种思维,

假如一个程序是一个完整的模型积木,数据是一块一块的积木,那么数据结构就是一块一块积木拼成的手啊脚啊,一个一个的部分(非常重要的)算法就是负责把这些形状给组装起来,整个模型的美观取决于数据结构和算法。算法可以提高整个程序的上限,而数据结构决定整个程序的下限,两个相辅相成,相互优化。你中有我,我中有你。因此才叫这门课程才叫数据结构和算法设计。

这就是我对数据结构的看法,有讲的不好的地方还请大家见谅。谢谢大家,希望对大家有好处!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值