Python 数据结构第一节
Python 数据结构第一节
我是小白呀
吾本布衣, 出自纽约, 四周大山. 箪瓢屡空, 环堵萧然, 不弊风日. 吾好读书, 滴水石穿, 笨鸟先飞, 求知不断, 方能立足. 不羡孔北海之座上客常满, 但求吾辈架上书常在. 涸辙遗鲋, 暮成枯, 人而无志, 与彼何殊. Self-study Computer Science. 愿为 open source 自效微力. 天高地阔,欲往观之.
因为啥也不会, 默默做一只小白
展开
-
数据结构 第一节 第七课
[toc]数据结构我们如何用 Python 中的类型来保存一个班的学生信息? 如果想要快速的通过学生姓名获取其信息呢?实际上当我们在思考这个问题的时候, 我们已经用到了数据结构. 列表和字典都可以存储一个班的学生信息, 但是想要在列表中获取一名同学的信息时, 就要遍历这个列表, 其时间复杂度为 O(n), 而使用字典存储时, 可将学生姓名作为字典的键, 学生信息作为值, 进而查询时不需要遍历可快速获取到学生信息, 其时间复杂度为 O(1).注: 对于这样的数据的组织方式, 我们就把他叫做原创 2020-10-21 05:30:39 · 1368 阅读 · 3 评论 -
数据结构 第一节 第六课
[toc]list 内置操作的时间复杂度dict 内置操作的时间复杂度原创 2020-10-20 23:54:50 · 1452 阅读 · 0 评论 -
数据结构 第一节 第五课
[toc]Python 内置类型能分析timeit 模块timeit 模块可以用来测试一小段 Python 代码的执行速度.class timit.Timer (stmt = "pass", setup = "pass", timer = <timer function> )Timer 是测量小段代码执行速度的类stmt 参数是要测试的代码语句 ( statment )setup 参数是运行代码时需要的设置timer 参数是一个定时器函数, 与平台有关time原创 2020-10-20 22:43:43 · 1141 阅读 · 1 评论 -
数据结构 第一节 第四课
[toc]常见时间复杂度执行次数函数举例 阶 非正式术语12 O(1) 常数阶2n + 3 O(n) 线性阶3n^2 + 2n + 1 O(n^2) ...原创 2020-10-20 08:10:23 · 1083 阅读 · 0 评论 -
数据结构 第一节 第三课
[toc]最坏时间复杂程度分析算法时, 存在几种可能的考虑:1. 算法完成工作最少需要多少基本操作, 即最优时间复杂度2. 算法完成工作最多需要多少基本操作, 即最坏时间复杂度3. 算法完成工作平均需要多少基本操作, 即平均时间复杂度对于最优时间复杂度, 其价值不大, 因为它没有提供什么有用信息, 其反映的只是最乐观最理想的情况, 没有参考价值.对于最坏时间复杂度, 提供了一种保证, 表明算法在此种程度的基本操作中一定能完成工作.对于平均时间复杂度, 是对算法的一个全面评价.原创 2020-10-20 07:39:00 · 1300 阅读 · 2 评论 -
数据结构 第一节 第二课
[toc]算法效率衡量执行时间反应算法效率对于同一问题, 我们给出了两种解决算法, 在两种算法的实现中, 我们对程序执行的时间进行了测算, 发现两段程序执行的时间相差悬殊 ( 126.514秒相比于 0.997 秒), 由此我们可以得出结论: 实现算法程序的执行时间可以反应出算法的效率, 即算法的优劣.执行结果:注: 每台机器执行的总时间不同, 但是执行基本运算数量大体相同单靠时间值绝对可信吗?假设我们将第二次尝试的算法程序运行在一台配置古老性能低下的计算机中, 情况会.原创 2020-10-20 05:41:22 · 1475 阅读 · 2 评论 -
数据结构 第一节 第一课
[toc]数据结构与算法 ( Python )Why?我们举一个可能不恰当的例子:如果将最终写好运行的程序比作战场, 我们码农便是指挥作战的将军, 而我们所写的代码便是士兵和武器.那么数据结构和算法是什么? 答曰: 兵法!我们可以不看兵法在战场上肉搏, 如此, 可能会胜利, 可能会失败. 即使胜利, 可能也会付出巨大的代价. 我们写程序亦然: 没有看过数据结构和算法, 有时面对问题可能会没有任何思路, 不知如何下手去解决. 大部分时间可能解决了问题, 可是对程序运行的效率和开销没有意原创 2020-10-20 03:15:02 · 1544 阅读 · 7 评论