数据结构与算法-为什么学习

197 阅读2分钟

为什么需要数据结构和算法

计算机就是存储+计算

随着互联网的发展,数据量越来越大,而计算资源是有限的,怎样在有限的时间和资源条件下;

提高效率,找到最优的数据结构和算法解决问题,这是我们现在需要解决的问题;现在很多的

开源软件都是在解决这些问题,而且作为很多系统的基础部分;

我们怎么选用合适的数据结构和算法?有什么衡量标准吗?

时间复杂度和空间复杂度。评价算法好坏的方法;

知道怎么去分析复杂度,才能作出正确的判断,在特定的场景下选用合适的正确的算法。

而不是盲目的死记烂背,机械操作。

面试需要

面试中经常考察候选人的算法问题;

为何一定是数据结构和算法呢;

也是下面一点表达的意思,可能现在招的事前段工程师,如果基础好,是不是过一段时间公司需要后端的工程师,候选人可以做后端

的工作,或者前后端交流也非常方便;

如果算法基础好、路子宽

基础好了,路子宽

从个人发展方面,基础好、有更多的可能行;

因为他是基础,而且你掌握很透彻,所以你如果想掌握工作之外的内容是比较容易的,也是公司看中的;

无论是大数据还是人工智能以及区块链都是需要算法基础。

自己使用或者创建工具

写自己的工具、需要考虑算法的性能问题,所以我们需要多算法深入理解;

例如时间复杂度、空间复杂度;

考虑数据量对算法的影响等等;

下面的课程是从各种开源软件中学习算法知识,他们是怎么应用算法的,为什么要使用某种算法或者数据结构

数据结构精讲:从原理到实战 Google 资深工程师带你玩转数据结构

分布式原理和算法解析课程,一个大型系统肯定是分布式,而一个分布式系统的治理需要各种算法的支撑;

分布式原理和算法解析

性能调优

系统达到一定的规模、需要做系统性能测试、分析、优化;这时候也需要算法知识;

这些高阶的课程都是需要数据结构和算法的基础的;

性能工程高手

学习主要参考一下课程

数据结构与算法之美-王铮

参考