Obviously the algorithm is likely to depend on the size of the input, so this is not a great idea.
很明显这个算法是与我的,输入的大小相关的,因此这不是个好方法。
And by that, I mean, not how much memory do I need to store the size of the input, it's really how much internal memory do I use up as I go through the computation?
需要占用多少内存,我意思并不是,存储输入需要多少内存,而是当我完成这个?
Now in this case, it's clear that I'm not only saying this function takes an input, I also have to give that input a name.
在这种情况,很清楚的,我不只是说明这个函数有一个输入,我还要给那个输入一个名字。
So, it makes a binary decision, either I create an action potential or I don't, but that decision could be based on many inputs, not just on input from one cell.
所以 这里产生一个二选一的决策,就是产生动作电位亦或不产生,不过这个决定可能是,根据很多输入信号做出的,而不是仅凭单个细胞所传来的信号
Notice in this program I have not checked whether or not the user actually provided input.
就拿这个程序说事吧,我们根本没有检查,用户到底有没有输入。
So one of the things I want you to notice here is that testing and debugging are not the same thing. When we test, we compare an input output pair to a specification.
这里我想大家注意的一件事,就是测试和调试是不同的两件事情,我们测试的时候,我们把输入输出,跟程序的规格说明书对比下。
It is certainly possible, for example, that a quadratic algorithm could run faster than a linear algorithm. It depends on what the input is, it depends on, you know, what the particular cases are. So it is not the case that, on every input, a linear algorithm is always going to be better than a quadratic algorithm.
一个二次平方级复杂度的算法,当然也是可能跑的比线性复杂度算法快的,这取决于,你知道的,输入以及特定的案例,因此并不是对于每个输入,线性复杂度就一定会,比二次平方级复杂度的算法的表现要好,只是通常来说是这样的。
Even those of you who've taken AP computer science or something similar perhaps recall that even just getting a piece of input from the user is ridiculously not obvious.
你们中上了AP计算机科学这门课,或者类似的课程的人可能还记得,即使只是从用户那里得到一个输入,也相当麻烦。
应用推荐