当前位置: 首页 > news >正文

算法学习心得

在极客时间上订阅王争老师的《数据结构与算法之美》有一段时间了,不仅让我学习了以前没有接触过的算法和数据结构,更重要的是让我懂得了如何学习数据结构和算法。数据结构与算法应该说是计算基础中的基础,在学习算法之前最好对计算机的原理有一定的了解,不然很难理解数组和链表的实现,所以大学计算机专业都会有算法课,一般都会在大二、大三(大一一般学习C语言、计算机组成原理)。

 

复杂度是一个算法的重要指标:时间复杂度、空间复杂度。我们希望“多快好省”实现某个功能,即希望执行时间快,又希望占用内存少,然而鱼与熊掌不可得兼,某些情况下就会“空间换时间”、”时间换空间“。复杂度分析是比较难的,通过公式进行推导,这要求有良好的数学基础。

 

为什么要学习算法?

1.算法是计算机的基础,基础不牢走不远。

2.大厂面试,算法必问。

3.帮助自己编写高性能的代码。

4.算法,是一种解决问题的思路和方法,有机会应用到生活和事业的其他方面。

5.长期来看,大脑思考能力是个人最重要的核心竞争力,而算法是为数不多的能够有效训练大脑思考能力的途径之一。

 

算法易学,应用最难。好比解数学题,公式易懂,但不一定能解出题目来,一道数学题可能用到多个知识点,同样的一个问题可能也需要用到多种算法,而且还没有标准答案。怎么办?只有多学多练,熟能生巧。

 总之,数据结构与算法是前辈们智慧的结晶,学习数据结构与算法才是软件编程的捷径。

 

转载于:https://www.cnblogs.com/zhanghaodong/p/10267077.html

相关文章:

  • 利用Python讲多张图片合成PDF文件
  • Apache Beam实战指南 | 玩转大数据存储HDFSIO
  • 记一次面试题——call、apply、bind模拟实现的更好方式
  • 逻辑运算符
  • 古郡敦煌迎新年初雪 雪漠风光引游人
  • 台湾大学生在威海研习中华文化 感叹收获太多“惊喜”
  • 如何使用 Druid 和 Kafka 构造 Kappa 架构完成流量分析
  • 利用位运算实现加减乘除
  • IT应该自动化的7件事
  • 陕西彬州一男子持刀杀害两名女性 警方发布协查通告
  • 圆方圆:python的错误处理——try语句
  • 洛谷 P1824 【进击的奶牛】
  • 自学自用 = B站(操作系统_清华大学(向勇、陈渝))1
  • Docker下部署自己的LNMP工作环境
  • Docker-01-使用镜像
  • Babel配置的不完全指南
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • python_bomb----数据类型总结
  • Redis在Web项目中的应用与实践
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • VUE es6技巧写法(持续更新中~~~)
  • WePY 在小程序性能调优上做出的探究
  • 百度小程序遇到的问题
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 高程读书笔记 第六章 面向对象程序设计
  • 工作手记之html2canvas使用概述
  • 关于Java中分层中遇到的一些问题
  • 观察者模式实现非直接耦合
  • 机器学习中为什么要做归一化normalization
  • 前端攻城师
  • 使用docker-compose进行多节点部署
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 我有几个粽子,和一个故事
  • 一些基于React、Vue、Node.js、MongoDB技术栈的实践项目
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 阿里云ACE认证学习知识点梳理
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • 正则表达式-基础知识Review
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • #宝哥教你#查看jquery绑定的事件函数
  • (Oracle)SQL优化技巧(一):分页查询
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • ****Linux下Mysql的安装和配置
  • .net 4.0发布后不能正常显示图片问题
  • .NET DataGridView数据绑定说明
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .Net中ListT 泛型转成DataTable、DataSet
  • [14]内置对象
  • [android学习笔记]学习jni编程