刷算法到底在刷什么?这是很多人会想不明白的。而算法为什么这么重要,今天想说下这块内容。市面上都在说不要重复造轮子,这里说的不是你在一开始就不造轮子。

我们学习成长的过程是,先模仿,后改造,最终创新。所以每个人都在重复造轮子,只是刚开始阶段,如果你一直在造轮子,那么说明你不是站在巨人的肩膀上。所以这里我想先说下,大学时期就是要多造轮子,多刷算法题,扎实的基础,是建造代码世界的地基。

地基不牢,地动山摇,没人敢要你去开发,因为稍不注意,你就会让整个项目崩塌。

而刷题是怎么个过程呢?先认识到算法到底学什么?

第一个就是抽象能力。这点非常重要。在刷算法的时候,简单的加减乘除,训练的是你的代码能力,以及考虑问题的全面性,逻辑思维。当复杂的像线路规划,就不是简单的逻辑问题,还有你的抽象表达能力。

循序渐进的去刷题,会让自己了解到自己的代码缺陷,补充自己考虑不全的地方,以及代码的可靠性。这就是刷题第一个我们训练的能力。

我们在写代码的时候,考虑正常情况没问题,大多数就是没有注意到异常。而像Google,微软开发工程师,一样会埋下Bug,代码是写不完备的,但是能够考虑周全,是写代码的人基础能力,如果case项没写全,if条件没穷举,那么就是一个隐性的Bug。

当你思考问题越来越全面,仔细,把该想到的,大多都考虑到了,这个代码就是高质量的,也是程序员老人值钱的地方,他们知道你这个代码缺哪些补充条件,需要做一些判断处理。

第二个就是严谨。刷算法题就是会让你不断地开动脑筋,去思考怎么实现功能,同时还要考虑各种数据输入,出现的异常状况。Leetcode刷题就如同打怪一样,随着不断地刷题,你的知识库会更加牢靠,你会更加顺手的去用手里的武器,这里指的是各种数据结构,类型,以及系统提供的库,快速帮助你完成目标。

基础的算法刷完,后面你遇见一些实际问题,比如写了一个网站,做数据库查询,你就能知道有哪些,大概哪个符合要求。你凭空想一个算法,就不如在你已知的基础上做改进。

我在刚毕业时候,公司让开发一个百家姓,要做智能查询的。代码上用的是二叉树查找法,我在基础上做了一个哈希映射加二叉法提高效率。

这些都是在数据结构和算法中你会接触到的一些经典方案,时间和空间看怎么交换。很多时候我们看到的查询表,你说计算机算不出来吗?可以的,但是没必要,存储一个表格就能轻松的快速的直接查询的方法给出答案,在合理状态来就是最优解。

刷题是训练自己的思维,遇见问题时候的解决能力,当你不会的时候,就会去开动脑筋,进行搜索,最终搞定问题,而这个就是刷题真正的意义所在。让你最终有了一套解决问题的能力,技巧。

这是我想说的,下来我分享一些Leetcode的资料,大家感兴趣的想学习的可以去学了。

第一个是中文网站 https://leetcode-cn.com/

上面有各种题,你也可以用各种语言去编写实现,如果不会,它有相对应的讲解视频,作为学习非常方便了。

第二个是动画版本演示学习,更加直观一些。(文末有获取方式

第三个是文字版本的讲解,详细的讲解Leetcode每个题的解法,实现方式。(文末有获取方式

第四个,分享一个B站视频,大家有时间,时间充足下可以学习。

地址:https://www.bilibili.com/video/BV1GW411Q77S

最后说下我的b站,主要讲解计算机知识,职场经验,面试技巧,大家可以来围观了。B站搜索 程序员职场大萌哥  ,就可以看见我了。

最后分享个好的课程,大家感兴趣可以围观学习了。

长按下方图片,进行学习。

本文中的资料,后台回复 Leetcode刷题 获取全部资料。

~~ end not end ~~

职场老鸟,互联网十年从业生涯,分享 [Java,Python,安卓,AI,爬虫] 技术文章,学习资料, 热点趣闻等。关注回复 1024 Python 电子书大全 面试资料,给你一份私藏的程序员好礼,永远更新中!赶紧来关注哦!

零基础新手学习算法Leetcode刷题指南相关推荐

  1. 面试算法LeetCode刷题班—BAT面试官带你刷真题、过笔试

    课程名称: <面试算法LeetCode刷题班> --BAT面试官带你刷真题.过笔试 主讲老师: 林老师 BAT资深研发工程师(T7/P8级),致力于搜索引擎及其子系统的研发.迭代与优化,数 ...

  2. LeetCode刷题指南

    CSDN话题挑战赛第1期 活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f 参赛话题:Leetcode刷题指南 ...

  3. LeetCode刷题指南——题目精选1

    这是LeetCode经典题目总结文章~ 基础:将数据结构及算法学习的差不多,LeetCode题目按类别刷题及总结,参考鄙人数据结构及算法系列文章~ 按类别将每类题目做好,大概刷250道左右的程度即可. ...

  4. Leetcode-How-What 力扣Leetcode刷题指南

    Leetcode-How-What 力扣Leetcode刷题指南 About the way how to use Leetcode wisely for preparing the intervie ...

  5. 【恋上数据结构】复杂度知识以及LeetCode刷题指南

    基础知识 什么是算法? 如何评判一个算法的好坏? 大O表示法(Big O) 对数阶的细节 常见的复杂度 多个数据规模的情况 LeetCode刷题指南 斐波那契数列复杂度分析 斐波那契数列 - 递归 斐 ...

  6. 新手学习python零基础_一个零基础新手学习Python应该知道的学习步骤与规划

    很多初学Python的同学都面临着很多的疑问,在之前的文章中我大致的很多问题我已经进行了讲解,无论你是编程零基础.数学,英语不错.还是说没有一个好的学习路线和学习规划等等,在之前的文章中我都给大家进行 ...

  7. LeetCode刷题指南!

    Datawhale学习 举办方:Datawhale.天池.LeetCode 为了帮助小伙伴更好地准备笔试,拿到春招offer,Datawhale联合天池.LeetCode推出24天刷题指南,组织了Le ...

  8. Matrix Studio LeetCode 刷题指南

    Hello 大家好,我是Alex,今天来说明一下Matrix工作室每日一题的刷题指南,虽然刷题一直饱受诟病,很多人不想刷题,但不可否认刷题确实能锻炼我们的编程能力,相信每个认真刷题的人都会有体会. 现 ...

  9. Leetcode刷题指南和top100题目

    原文链接:https://blog.csdn.net/qq_39521554/article/details/79160815 参考博文:https://blog.csdn.net/mmc2015/a ...

最新文章

  1. Unable to load script from assets ‘index.android.bundle‘.
  2. SSH基本原理和免密码登录
  3. 打印矩阵 java_【Java】 剑指offer(29) 顺时针打印矩阵
  4. mac下卸载jdk1.7
  5. 【转】VS技巧—任务列表Task List(ToDoList)
  6. 平移刚体上各点的加速度和速度_物理-力学|第七讲|刚体力学
  7. c语言编程15,c语言编程15题.doc
  8. U66785 行列式求值
  9. Ubuntu上可使用的15个桌面环境
  10. 大数据时代已来,开发者该如何出击?
  11. spring报“Could not resolve placeholder”错误
  12. AVG游戏《裂缝》策划案
  13. 地产行业信息化建设思考
  14. 胖客户端、瘦客户端与智能客户端
  15. 【应急响应】域名劫持事件发生后的应急响应策略
  16. 开发板的lcd 显示
  17. 关于《十天学会AVR单片机》的教程头文件AVR_PQ1A.h
  18. python 信号.同步 day07
  19. UCOSIII 任务管理(中)
  20. Leetcode771:宝石与石头

热门文章

  1. 【视频架构day1】美拍短视频系统架构:1亿流量的应对之道
  2. 从​程序员到大型分布式架构师,自己到底位于哪里(一)
  3. IOS开发之——图片的内存优化
  4. 我挑了 10 本数据库类好书,来送你
  5. 令我怀念不已,每每想起都热泪盈眶的大学生活
  6. 内核领域-功耗机型的续航基线优化问题-技术调研报告-王井玉_20211216
  7. vue 首屏优化加载(三)(CND引用)
  8. iOS VIPER 架构解读
  9. 一步一步安装 Microsoft .NET Pet Shop 4.0
  10. Debian安装Python简要说明