前言

  终于决定写下个人的第一篇技术博客了。
  既能对过去所学有个复习和总结,又能在某种程度上展示一下自己,或许还能对其他人有些许的帮助,在这些好处的诱惑下,牺牲点时间用来码字还是值得的。
  #技术类的博客就在本平台了,其他题材的文章,可以关注一下我的简书账号:嚼牛牡丹

正文

  首先要说的是,鄙人目前仅仅是初出茅庐,因此有些错误的理解和论述希望看官能够予以包容,如果能不吝赐教指出错误,鄙人将感激不尽。
  先从最近重点学习的数据结构和算法写起吧。在这里,我不打算贴出相关的概念和学术型的定义,私以为如果把编程比喻为盖房子的话,那么数据结构可以认为是建筑材料,而算法可以认为是具体的盖房子的方法,两者是互相依存的,算法需要结合数据结构去设计,数据结构则是算法的基本处理对象。
  就拿最直接的数据排序简单说明一下两者的关系,对一组数据进行排序,那么这组数据其实就是算法要处理的对象,无论是简单些的冒泡排序、插入排序还是复杂些的归并排序、快速排序都是在对这组数据进行处理。同样是这组数据,如果在计算机中存储的方式不同,那么针对这组数据的处理就是有区别的,即使是同样的算法针对不同的数据存储方式也需要做出对应的调整。事实上,有些算法必须依托于特定的数据结构才能实现。
  一般来说,学习编程首先是学习一门编程语言,然后利用基本的解决问题的逻辑去写一些简单的程序,再接着学习基础的数据结构和算法去加深对编程的理解,同时解决一些相对复杂的问题,这个时候解决问题的逻辑已经并非那么直观和暴力了,再然后,是学习更加复杂的数据结构运用和更加复杂的算法思想,这个时候有些人跪倒在更加抽象的逻辑墙之外,有些人迈了进去,开启了成神之路。很遗憾,我个人目前好像还没到这堵墙呢 罒ω罒。
  从我个人的经验看,无论学习什么尽量要递进式地学习,因为跳跃式的学习很容易留下缺口,虽然后者在某些情况下可以加快进度,但是从长远看,递进式地学习其速度一般不会降得很快,能够稳步推进。你可以试一下在线性表还不会的情况下,直接挑战一下图论,我相信你在学习图论的时候还是会忍不住翻到前面看线性表的……另外还有两个需要重点提一下的点,首先,在学习数据结构和算法时,必须对自己所用的编程语言非常熟悉。俗话说,工欲善其事,必先利其器,工具用不好是很麻烦的,你会发现,明明脑袋里有想法,但是却无法用编程语言描述出来。其次,理论实践一定要互相印证,想要升级段位,必须保证足够的代码量。
  我相信肯定有很多人跟我一样,经历过或正在经历这样一个阶段,就是理论看得懂,别人的代码也看得懂,但需要自己亲自操刀上手的时候,就会有一种无从着手的感觉,始终觉得自己差了点东西。现在我可以告诉你你差的东西是什么——火候。试着撇开别人的代码,自己去理思路,然后编写程序解决一些问题吧!切忌眼高手低,不肯码代码,当你代码量够的时候,差不多也就是你打通任督二脉的时候了。
  虽然博主现在依旧实力低微,但是博主觉得自己已经在走向高手的道路上了。也希望与我同行的你们早日修成正果。
  共勉!

接下来

  接下来就是展现真正技术的时候了,将按照自己的学习顺序,总结一下每个部分的学习成果和依旧存在的问题和疑惑。

数据结构与算法的个人学习经验小结(总)相关推荐

  1. 机器学习算法工程师面试学习经验

    作为一个过来人,分享一点我的经验. 先介绍一下自己,本人是国内读的数学本科,北美top统计系硕士毕业,之后在FLAG之一的总部核心部门做数据科学家.期间面试过20-30名candidate. 想要找到 ...

  2. 数据结构与算法之美学习笔记:哈希算法-哈希算法在分布式系统中有哪些应用(第22讲)...

    上一节,我讲了哈希算法的四个应⽤,它们分别是:安全加密.数据校验.唯⼀标识.散列函数.今天,我们再来看剩余三种应用: 负载均衡.数据分片.分布式存储 你可能已经发现,这三个应用都跟分布式系统有关.没错 ...

  3. 1算法分析——数据结构与算法Python版学习笔记

    什么是算法分析? 计算资源指标:一种是算法解决问题过程中需要的储存空间或内存,另一种是算法的执行时间 运行时间检测 time模块,获取计算机系统当前时间 例如: 方法一:累计求和程序的运行时间检测 i ...

  4. 数据结构与算法:二叉树的学习

    1.了解树形结构 1.概念 树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合.把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的.它具有以下 ...

  5. 旧金山大学数据结构和算法的可视化学习工具

    http://hao.jobbole.com/visualizing-algorithms-and-data-structure/

  6. 数据结构与算法Java版学习教程,最适合新手入门(通俗易懂)

  7. 【数据结构和算法】如何学习数据结构与算法 ?过来人的建议(一)【方法篇】

  8. 学习JavaScript数据结构与算法(一):栈与队列

    本系列的第一篇文章: 学习JavaScript数据结构与算法(一),栈与队列 第二篇文章:学习JavaScript数据结构与算法(二):链表 第三篇文章:学习JavaScript数据结构与算法(三): ...

  9. GitHub 上值得前端学习的数据结构与算法项目

    Hello,大家好,我是你们的 前端章鱼猫. 简介 前端章鱼猫从 2016 年加入 GitHub,到现在的 2020 年,快整整 5 个年头了. 相信很多人都没有逛 GitHub 的习惯,因此总会有开 ...

  10. 青岛大学_王卓老师【数据结构与算法】Week04_12_案例分析与实现2_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频. 一方面用于学习记录与分享,另一方面是想让更多的人看到这么好的<数据结构与算法>的学习视频. 如有侵权,请留言作删文处理. 课程视频 ...

最新文章

  1. C++ 笔记(07)— 常量(字面常量、const定义常量、constexpr 定义常量、enum 定义常量、define 定义常量)
  2. 纯内存linux,7、内存知识和Linux基本原则
  3. 三维曲面matlab程序,用matlab画三维曲面图 - 程序语言 - 小木虫 - 学术 科研 互动社区...
  4. 如何在Ruby中获得随机数
  5. 多重背包 (poj 1014)
  6. Openstack Neutron 管理的网络资源
  7. Spring Boot学习总结(6)——SpringBoot解决ajax跨域请求问题的配置
  8. AIR中使用FCKeditor
  9. 通过流程构建组织的【个人能力】和【团队能力】
  10. 【SpringBoot】解决拦截器注入 Service 为空问题
  11. [转载] python全局变量的使用
  12. Linux命令行解析参数之getopt_long
  13. dk 7 linux x64.rpm,linux x64 Java/JDK 11下载 jdk-11.0.7_linux-x64_bin.rpm官方镜像版
  14. 自己做量化交易软件(28)小白量化实战2--变红买入变绿卖出
  15. c语言输出图形之小飞机
  16. js科学计算机,js网页在线科学计算器代码
  17. markdown合并单元格
  18. 反馈对于用户体验的重要性
  19. 百度、腾讯、滴滴,如何看2019智能网联汽车发展 | 2019互联网岳麓峰会...
  20. Filter过滤器链执行顺序

热门文章

  1. 平行四边形背景的制作
  2. linux系统学文档pdf,Linux操作系统学习.pdf
  3. 一根网线实现两台计算机网络共享
  4. 高琪飞机项目飞机爆炸图片_爆炸式的工作机会和多项目同步
  5. 香港90年代电视剧推荐
  6. python--leetcode448. Find All Numbers Disappeared in an Array
  7. 2009年中国直销业9大主旋律
  8. 判断三点方向(顺时针或逆时针)
  9. ubuntu 安装caj阅读器
  10. React router v6写法总结