数据结构与算法之美学习笔记一

写在前面的话:

既然数据结构和算法是作为一个合格的程序员需要跨过的一道坎,一味地逃避终究会带来更多困扰和不自信。那就破釜沉舟,迎刃而上。只有根治方能治心病。所以买了极客时间的数据结构与算法之美这个课程,学习以解心中的困惑。

开篇:涅槃重生,跨越数据结构与算法这到坎
入门篇

时间、空间复杂度是数据结构和算法最重要的概念
学习时间、空间复杂度的概念,大O表示法的由来,各种复杂度分析技巧,以及最好、最坏、平均、均摊复杂度分析方法。

基础篇

涵盖了最基础,最常见的数据结构和算法

高级篇

开拓视野,强化训练算法思维,逻辑思维。

实战篇

通过开源项目,框架或系统设计的问题,剖析背后的数据结构和算法。

目的

学习数据结构和算法的目的是为了建立时间复杂度、空间复杂度的意识,写出高质量的代码,能够设计基础的架构,提升编程技能,提升逻辑思维

基础

数据结构和算法是什么:
1、数据结构是一组数据的存储结构
2、算法就是操作数据的方法
3、数据结构和算法是相辅相成的、数据结构为算法服务,而算法要作用在特定的数据结构上

学习的重点在于:
数据结构和算法解决的是如何更省、更快存储和处理数据的问题,因此就得需要一个考量效率和资源消耗的方法,这就是复杂度分析方法。在学习数据结构和算法的过程中,需要学习的它的来历,自身特点,适合解决的问题,以及实际的应用场景。
1、数据结构和算法的精髓:复杂度分析
2、最常用最基础的数据结构有:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie树。
3、最常用的算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法

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