首先 程序 = 数据结构 + 算法
为什么这么说呢?因为我们大多数的业务,不就是拿取数据后,通过一系列的逻辑最后输出我们的结果吗? 所以数据结构,就是承载这些数据的载体的表现形式,比如arr数组,list列表等等。
1、数据类型跟数据结构什么关系?
我们常见的数据类型int、string、float等等比较简单,但是有的数据类型可以更复杂,比如我自己的进出,销毁的结构,所以这些类型变成了数据结构,比如arr 堆(完全二叉树) 栈等等。
2、数据结构来自生活。
比如栈,我们可以理解成钉在墙上的任务单,先进的却要后出,后进的先出,是吧。
比如队列,不就是买票排队吗?
比如树,不就是公司的组织架构图吗?
比如链表,不就是朋友圈吗?找呀找呀找朋友!
3、算法拿来干吗咧?
算法可以用着在特定的数据结构上,从而达到某种目的,比如在【1,2,3,4,6,7,8,0,123134】中找到6的位置,我们可以用二分法等等,算法就是优化整个搜索定位的过程,可以降低计算的复杂度(O(1)最佳)。
4、平常有没有用咧?
没啥大用,面试的时候用,因为学习数据结构跟算法,体现的是一个人的逻辑能力跟学习能力,进而达到筛选的目的!