什么是数据结构和算法?

我们应该都听过这么一句话:程序 = 数据结构 + 算法。那么数据结构和算法本质是什么?我们又为什么要学习数据结构和算法?

数据结构和算法本质是什么?

网上对数据结构和算法的介绍是这样:

  • 数据结构是计算机中存储、组织数据的方式,比如数组、链表、树、图、堆、队列、栈、字典
  • 算法是计算机中处理数据的方式,比如排序、二分查找、归并排序、快速排序

通俗来说:

  • 数据结构是数据的容器,用来对数据增、删、改、查。我们就是要在众多的容器中,针对现实开发中的实际情况,选择最合适的数据存储容器。比如:杯子和壶,都能装水,杯子是容器,壶也是容器,水作为数据,我们什么时候选择杯子和壶?答案显而易见,我们的目的是想方便的喝水,选择杯子,我们目的主要是保存水,倒水的频率没有那么多,则选择壶。当然你可能会跟我说:“我用壶也能保存水,也能喝水”。这也合理,因为开发中,大家认知和想法不同,选择自然也不同。但能用是一回事,好用又是另一回事,coding 同理。

  • 算法是针对特定数据结构增删改查的最优解决方案,比如二分查找,要求数据是有序的数组。针对排序,我们有很多的算法,比如冒泡排序、选择排序、快速排序等,针对实际情况选择最优算法,也是我们学习数据结构和算法的目的。

大厂面试

很多大公司,在面试的时候都喜欢考算法,为什么呢?因为这个是基本功,就好比建房子,地基一定要牢固。大厂面试,不仅看重过往和当前的技术,也要看重未来的潜力。地基越牢,走的跟高。

方便了解框架源码和思想

很多优秀的开源框架,都糅合了很多基础数据结构和算法的设计思想。能弄明白这些底层原理,你就能更好地使用它们。即便出现问题,也很容易就能定位。培养你举一反三的能力,帮助你学习成长。

总结

  • 程序 = 数据结构 + 算法
  • 学习数据结构和算法,最实际的好处是帮助进大厂,获得理想岗位
  • 培养解决问题的思路和方法,帮助个人成长
  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值