系列文章目录
算法学习打卡
第一章 字符编码分类(算法基础一)
第二章 双飞本科学习动力,方向(算法基础二)
第三章 零基础入门算法应该学些什么(算法基础三)
?前言
这篇文章不是让你成为大神的,学完也不是多厉害,而是,给处于大学迷茫、不知道学啥的你,一个学习的方向,无论你是否是科班。不过我相信,当你学完了这些,你应该会有自己的学习方向了。
?一、什么是数据结构与算法
1、程序 = 数据结构 + 算法,足以看出他们的重要性,但感觉平时编程没有刻意用到他们,其实这只是感觉,代码的字里行间无不在使用。
一个常见的心理路程就是:
开始学习时,感觉他们没什么用,平时敲代码也用不到,没有在代码里刻意设计过
学习一段时间,发现以前写代码都在悄悄的用到,然后开始刻意按照规则设计代码
时间久了,又感觉没有用到了,其实是在下意识的用了,只是用的时候没有刻意贴上“数据结构与算法”的标签
就像《论语》中说的,三十而立,四十不惑,,,直到随心所欲不逾矩。
2. 算法
操作数据的一组方法。
算法的设计取决于逻辑结构,算法的实现依赖于存储结构。
3. 数据结构与算法
数据结构是为算法服务的,算法要作用在特定的数据结构之上。无法孤立数据结构来讲算法,也无法孤立算法来讲数据结构。数据结构是静态的,它只是组织数据的一种方式。如果不在它的基础上操作、构建算法,孤立存在的数据结构就是没用的。
?二、常见数据结构与算法
10 个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie 树;
10 类算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法。
要学习它的“来历”、“原理”、“自身的特点”、“适合解决的问题”以及“实际的应用场景”。
总结
C站优秀文章