算法学习路线

article/2025/9/15 22:28:54

算法学习是一条漫长而又苦涩的道路。之所以漫长,是因为有关算法的学习是无穷无尽的,如果你不想经历程序员的35岁之劫难,那就要不断地学习算法,提高自己的不可替代性。之所以是苦涩,是因为算法更像是数学题,对智力是有一定要求的,学习算法的过程中总是会质疑自己,相较于一些学会就能用的技术而言,算法学习进步又不是那么显而易见,但是又是每一个程序员必须经历的。

所以学习的方法很重要,在自己智力、自制力以及一些其他我们无法控制的因素都是固定的情况下,因为这些因素都很难改变,方法的好坏直接决定我们学习的效率。

废话不多说直接附在自己学习的过程和一些资源的推荐。

首先最重要的事情就是

一定要动手自己敲

一定要动手自己敲

一定要动手自己敲

重要的事情说三遍

数据结构

笔者认为算法学习之前,一定要有数据结果的基础,最起码知道那些栈啊,队列啊,如果学习算法过程出现了相关的问题,可以补充一下这方面的知识。

还有一个问的比较多的问题,就是我需要为了算法,学习C或者C++吗?其实问这种问题的大多是大学生,因为大学基本上都是用C编写的数据结构和算法,因为C可以直接操作内存,这样更容易展示数据结构和算法的一些概念。不过大家记住了语言只是工具,没有必要纠结于此。目前还没有说什么只有一种语言能干什么事,别的干不了的说话,只是在面对不同需求,每个语言有自己的优势而已。Java早期的内核还是使用C语言编写的呢。

如果有朋友想了解数据结构的重要性,可以看看这篇文章,能帮你快速了解数据结构。
数据结构的重要性

资源推荐:
1.
如果有C语言基础,推荐大家小甲鱼的C语言数据结构,视频诙谐幽默,笔者在上大学期间,考试前经常观看小甲鱼的视频恶补知识。
https://www.bilibili.com/video/BV1jW411K7yg

因为笔者大学之后就再也没有使用过C/C++了,所以在这里推荐一些Java的资料,这也是笔者自己学习使用过的资料,不过有些比较老旧,但是经典永存,内容还是很有含金量的。

数据结构书记推荐

这篇文章推荐了5本关于数据结构的书籍,其中笔者读过并且感觉不错的《数据结构与抽象》

连接送上
链接:https://pan.baidu.com/s/1gfJGk-bCgqDB57Z3rm_RFw
提取码:90go

非常经典,适合初学者

算法

推荐Guide哥的一个算法学习路线,讲的非常好,值得一看。Guide的公众号也可以关注,笔者在大学后才发现如此宝藏的公众号,如果早点遇到可能能节约大量时间。

写给Java程序员看的算法学习指南!

这篇文章中也提到过的一本经典之作,就是《算法》

实为经典之作。

Leetcode

算法的学习过程中不得不提到的就是找个网站了,其实上面推荐的两本书,不一定要完全读完读懂,说句实话,笔者从业十几年也不能说完全明白和懂。当你有一定基础的时候,完全就可以刷题了,这时候的学习就变得有趣了,做对一道题立刻就能有所收获。

如何使用Leetcode呢,让我们来看看B站美女程序员怎么说。
https://www.bilibili.com/video/BV1nJ411n7dV

课代表总结:

刷题目录
https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E7%9B%AE%E5%BD%95.md

推荐的学习频道👍🏻
Youtube :Back To Back SWE
https://www.youtube.com/channel/UCmJz…

B站:
1. 花花酱
https://space.bilibili.com/9880352?fr…
2. 小Q刷题
https://space.bilibili.com/149758?fro…
3.绵羊教授
https://space.bilibili.com/354892788?..


http://chatgpt.dhexx.cn/article/gFt4WJRA.shtml

相关文章

算法入门学习

算法 1. 算法1.1 什么是算法?1.2 算法的质量评价指标1.2.1 时间复杂度1.2.1.1 常见的时间复杂度量级(效率从高到低)1.2.1.1.1 常数阶O(1)1.2.1.1.2 对数阶O(log n)1.2.1.1.3 线性阶O(n)1.2.1.1.4 线性对数阶O(n * log n)1.2.1.1.5 平方阶O(n^…

算法学习的一些个人心得

目录 前言正文总结 前言 悟已往之不谏,知来者之可追。 正文 常规的经验贴呢,就是给学弟学妹推荐一些书单,然后写一写自己的刷题经历,最后推荐大家多打比赛,多做项目,多买一些网课。这是比较容易写的。 但…

算法学习指南:什么是算法?

解释算法的实现逻辑就像讲故事一样。算法会在普通的解决方案中引入新颖的思路或进行某种创新。在本文中,我们将讨论一个简单问题的几个解决方案,解释影响算法性能的一些因素。在这个过程中,我将介绍一些用于分析算法性能的技巧。这些技巧与算…

算法学习基础(一)

作为一名普通的二本学校,我在很早之前就有一个目标,那就是大学之后好好找一个软件开发工作。因此学习了很多的编程基础,不过近几天面试发现,技术官总是喜欢问你算法知识。编程语言不断变化,但是很底层的知识与算法密切…

算法学习(一)

算法第四版学习笔记–1.3 Bags, Queues and Stacks 前面120页都是Java基础,建议有Java基础的同学可以直接从120页开始学习,但是这里面的例子有用到algs4这个jar,需要稍微了解一下,影响不大,都是对JDK的一些封装。 In…

算法学习入门

14天阅读挑战赛 *努力是为了不平庸~ 算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对…

什么是算法?如何学习算法?算法入门的学习路径

何为算法 简单的说,算法就是:解决问题的手段,并且是批量化解决问题的手段。 比如,我们想要从成都去北京,起点就是成都,终点就是北京。如何去?我们就可以称为算法。 因此选择不同的算法,那么虽然终点都是一样,但是性能以及效率就根据算法的优劣而决定的。因此,我们…

如何学习算法?

今天在群里刚好看到有人在讨论算法的问题,刚好自己曾经也有一个算法大神的梦,来说说自己对算法的理解。 算法怎么学?什么样程度才算把算法学透?算法学会了有什么用? 算法的学习是非常重要的,那算法学到什么…

突发!大连理工大学研三学生自杀,遗书曝光,研究生的压力应该谁来化解?...

点击上方“码农突围”,马上关注 这里是码农充电第一站,回复“666”,获取一份专属大礼包真爱,请设置“星标”或点个“在看” 来源:科研干货 10月13日,微博上一个名为“红烧土豆叶”的网友引起广大网友关注&a…

英雄算法学习路线

文章目录 零、自我介绍一、关于拜师二、关于编程语言三、算法学习路线1、算法集训1)九日集训2)每月算法集训 2、算法专栏3、算法总包 四、英雄算法联盟1、英雄算法联盟是什么?2、如何加入英雄算法联盟?3、为何会有英雄算法联盟&am…

算法如何学习?别想太多,两个字

文章目录 前言一、语言基础1、「 光天化日学C语言 」 二、刷题必读1、「 LeetCode零基础指南 」2、「 九日集训每日打卡 」 三、语言入门1、「 C语言入门100例 」 四、算法入门1、「 算法零基础100讲 」 五、算法进阶1、「 画解数据结构 」2、「 LeetCode算法题集汇总 」3、「 …

YOLOv5剪枝✂️| 模型剪枝实战篇

本篇博文所用代码为开源项目修改得到,且不适合基础太差的同学。 本篇文章主要讲解代码的使用方式,手把手带你实现YOLOv5模型剪枝操作。 文章目录 0. 环境准备1. 使用YOLOv5训练自己的模型2. 对训练好的模型进行稀疏训练3. 对稀疏训练后的模型进行剪枝4. 对剪枝后的网络模型微…

决策树——预剪枝和后剪枝

目录 简析 为什么要剪枝? 剪枝的基本策略 预剪枝 后剪枝 剪枝的优缺点 预剪枝的优缺点 后剪枝的优缺点 实现 数据集 剪枝前 预剪枝 分析 代码 简析 为什么要剪枝? “剪枝”是决策树学习算法对付 “过拟合” 的主要手段 可通过“剪枝”来…

网络剪枝通俗解释

论文链接:Learning Efficient Convolutional Networks through Network Slimming 视频链接:唐宇迪 基本思想 我们在模型生成通道数为[64,128,256,512]的特征图,但是这些特征图不一定都重要,我们希望能够体现特征图的主次之分&…

α、β剪枝法

在讲α、β剪枝法之前,我们先了解一下极大极小值算法;因为α、β剪枝法是为了简化极大极小值的计算而提出的。 极大极小值法 Minimax算法 又名极小化极大算法,是一种找出失败的最大可能性中的最小值的算法(即最小化对手的最大得益…

决策树的剪枝

目录 一、为什么要剪枝 二、剪枝的策略 1、预剪枝(pre-pruning) 2、后剪枝(post-pruning) 三、代码实现 1、收集、准备数据: 2、分析数据: 3、预剪枝及测试: 4、后剪枝及测试&#xff1…

决策树算法和剪枝原理

决策树算法和剪枝原理 本节我们对决策算法原理做简单的解析,帮助您理清算法思路,温故而知新。 我们知道,决策树算法是一种树形分类结构,要通过这棵树实现样本分类,就要根据 if -else 原理设置判别条件。因此您可以这…

决策树(decision tree)(二)——剪枝

决策树(decision tree)(二)——剪枝 **注:本博客为周志华《机器学习》读书笔记,虽然有一些自己的理解,但是其中仍然有大量文字摘自周老师的《机器学习》书。 决策树系列博客: 决策树(一&#x…

机器学习--决策树二(预剪枝和后剪枝)

一、什么是决策树的剪枝 对比日常生活中,环卫工人在大街上给生长茂密的树进行枝叶的修剪。在机器学习的决策树算法中,有对应的剪枝算法。将比较复杂的决策树,化简为较为简单的版本,并且不损失算法的性能。 二、为什么要剪枝 剪枝…

关于剪枝对象的分类(weights剪枝、神经元剪枝、filters剪枝、layers剪枝、channel剪枝、对channel分组剪枝、Stripe剪枝)

文章目录 剪枝对象分析:1.weights剪枝:2.神经元剪枝:3.Filters剪枝:4.通道剪枝5.Group-wise剪枝6.Stripe剪枝 剪枝对象分析: 剪枝分为结构化剪枝和非结构化剪枝,细化可分为weights剪枝、神经元剪枝、filte…