- 博客(13)
- 收藏
- 关注
原创 数据结构与算法二
文章目录一、二、1.2.三、1. 只考虑最坏情况2. 去掉常量3. 不同的输入4. 去掉不重要的部分四、空间复杂度一、二、1.2.三、1. 只考虑最坏情况还是上面的例子,如果其中某一个for循环没有完全执行(比如for循环执行一半的时候触发条件被break掉),Big O的计算还会改变吗?答案是否定的,因为计算Big O的时候我们只考虑最坏的情况。2. 去掉常量凡是在计算中出现的常量都要被去掉,我们在上面的例子中将O(4 + 3n)简化为O(n)就是一个例子,这里需要额外补充一下不是见.
2021-06-05 08:23:19
665
1
原创 数据结构与算法一
Big O文章目录Big O一、什么是Big O二、Big O符号1. O(n)2. O(1)3. O(n^2)4. 其他符号5. Big O计算与简化三、Big O规则1. 只考虑最坏情况2. 去掉常量3. 不同的输入4. 去掉不重要的部分四、空间复杂度一、什么是Big OBig O通过计算一个算法所需的执行时间来让我们判断一段代码的优劣程度。当程序的输入的规模不断地扩大后,程序执行的时间也会相应地增加,如下图所示,横坐标代表输入的数量,纵坐标代表程序执行操作的次数(相当于执行时间)。 可以看出随
2021-05-30 07:29:54
284
原创 从零建造计算机 (十一)
从零建造计算机 (十一)文章目录从零建造计算机 (十一)一、 计算机外部的世界二、键盘三、四、一、 计算机外部的世界如果所有计算机能够做的就是运行一个程序并重新排列RAM中的bytes,没人会知道它正在做什么。因此计算机需要更多的功能才能变得有用,与外界进行通信就是一种方式。处理计算机外部的事物简称为输入输出或者叫做IO。有些东西只能输入,例如键盘,有些东西只能输出,例如显示屏,有些东西既可以输入也可以输出,例如磁盘。构建IO所需的只是几条新的连线和一条新的指令。对于连线,我们要做的就是将CPU
2021-03-11 09:07:48
289
原创 从零建造计算机 (九)
从零建造计算机 (九)文章目录从零建造计算机 (九)一、计算机里的一个伟大发明二、指令三、Arithmetic or Logic指令四、一、计算机里的一个伟大发明本发明的第一个部分是,我们将向CPU添加另一个寄存器。它叫做指令寄存器(IR)。该寄存器中的位将指示CPU该怎么做,比如用0000 0011代表某一个操作。 IR从bus获取输入,其输出进入CPU的控制部分,然后它的位会选择几种可能的CPU的操作之一。本发明的第二个部分是CPU中的另一个寄存器叫做指令地址寄存器(IAR)。就像通用寄存器一
2021-03-08 09:52:48
443
原创 从零建造计算机 (七)
从零建造计算机 (七)文章目录从零建造计算机 (七)一、Comparator和零二、逻辑logic三、四、五、六、七、一、Comparator和零二、逻辑logic三、四、五、六、七、未完待续…
2021-02-24 06:54:37
321
原创 从零建造计算机 (六)
从零建造计算机 (六)文章目录从零建造计算机 (六)一、Byte才是最小的单位二、SHIFTer三、NOTer四、ANDer五、ORer六、EXCLUSIVE ORer六、ADDer一、Byte才是最小的单位独立的门操作bits,两个输入一个输出。但是RAM每次都是储存和读取一个Byte,bus也是一次传输一个Byte,为了使大家同步,我们也想让CPU一次处理一个Byte,所以在接下来的内容中就是介绍如何让CPU处理Bytes而不是bits。二、SHIFTer位移器的设计非常简单,你只需要连接b
2021-02-17 09:01:50
345
原创 从零建造计算机 (四)
从零建造计算机 (四)文章目录从零建造计算机 (四)一、计算机的前一半,“内存”一、计算机的前一半,“内存”在介绍内存前我们先举一个实际的例子。有一天快递公司打电话让你去取快递并告诉你物品在货架的第五排第三列,当你到达快递公司的时候发现了存放你物品的那一个货架并发现了这个货架有16排16列(总共能存256个快递)。正常人的找法应该是先确定第五排在哪然后确定第三列在哪,他们的交点就是存放你快递的位置。现在我们要用门,register和decoder(解码器)来模仿快递公司存快递的方式为计算机设计一个可
2021-02-12 11:32:25
323
原创 从零建造计算机 (三)
从零建造计算机 (三)文章目录从零建造计算机 (三)一、从byte开始二、计算机用“bus”交流三、四、五、一、从byte开始为了使用byte memory构建一个更高级的工具,我们还需要先介绍另外一个零件,它叫做Enabler,长这样:如果你理解了byte memory的原理,上面的结构对你来说理解起来易如反掌。它的作用十分十分地简单,就是负责输入i是否可以原封不动地通过到输出o,如果e设置为off(0),那么所有的输出马上就会掉电全变成0。简化标志如下:现在我们把byte memory和
2021-02-12 11:31:55
222
原创 从零建造计算机(二)
从零建造计算机 (二)文章目录从零建造计算机 (二)一、计算机的记忆二、封装上面的内容三、我们记住了一个bit可以干什么?四、8个就够了!五、什么是代码?一、计算机的记忆上一节我们介绍了计算机内只有bits和操作bits的工具NAND门,但是只操作bits让它不断改变有电和没电的状态可不是办法。举例来说,你肯定不想让自己的计算机每次开机只能运行一个操作就关机然后开机再运行下一个操作,我们还需要时时刻刻把操作的结果记录下来以便后续使用。人类早期的计算机记忆的方法是采用给纸带打孔的方式,但是现代计算机肯
2021-02-12 11:31:13
532
3
原创 从零建造计算机(一)
从零建造计算机文章目录从零建造计算机前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言本文是作者学习J.Clark Scoot所著的《But How Do It Know?》后的归纳和总结。此书从最基本的逻辑门的概念详细地介绍了计算机是如何构成并工作的。一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pa
2021-02-12 11:30:16
1576
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅