本章字数919,预计阅读时间两分钟。
目录
前言
关于为什么我着急跳过很多的课程,直接学习算法与数据结构这部分,很大原因是刚结束的蓝桥杯院内选拔赛,动态规划,广搜,递归,二分,我一个不会,落选是正常的,也让我认识到了算法的重要性。冲冲冲!!!管他那么多学就对了,选择了就好好坚持。有时候会想起老师说的话:“你刚开始的话语言就选的不太好,推荐你选择c/c++。”是,学了python也有一段时间的了,一路下来,好似质疑的声音会多一些;这个真的能找工作吗?这个有什么用?不是985,211的学这个没用的......种一棵树,最好的时间是在10年前和现在,假若我以后并没有能够利用好python这个语言,那我也会庆幸我有过尝试,加油加油加油。
数据结构与算法介绍
程序 = 数据结构 + 算法
算法(Algorithm)
算法是指解题方案的准确而完整的描述,是解决问题的清晰指令。代表着用系统的方法去描述解决问题的策略机制。
简单来说:
任何完成了指定需求的代码片段都可以视为算法!
数据结构(Data Structures)
数据结构是计算机存储、组织数据的方式
数据结构是指相互之间存在一种或多种特定关系的数据元素的集合
通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率
什么样的程序才是好的程序
让我想起了蓝桥杯练习题中的:
运行限制
- 最大运行时间:1s
- 最大运行内存: 256M
这两个就很好的诠释的好的程序以什么为标准了。
1.快:要求程序执行速度快,对应的是“时间复杂度”
2.省:占用更小的空间,对应的是“空间复杂度”
那么我个人认为还要一个也是比较重要的点就是要让别人也能读懂,易读性!!
据说真正的项目开发(还没可以开发过真正的项目)中大部分时间都是:
从数据库取数据 -> 数据操作和结构化 -> 返回给前端
学习方法
老师讲的:
用的很原始的方法来学习算法:
1.阅读资料了解算法思想。(这里我买了《算法图解》辅助学习)
2.纸笔模拟尝试理解。
3.用自己熟悉的编程语言来实现。(当然是python了)
flask框架也会同步学习更新笔记!