Input 大O表示法-输入大小

Input 大O表示法-输入大小,input,big-o,Input,Big O,我正在读一篇关于topcoder的博客abt big O notation。 我遇到了下面的一段 关于输入大小的正式注释 我们开始谈论的“输入大小”到底是什么?在 形式定义这是以某种形式编写的输入的大小 固定有限字母表(至少有2个“字母”)。为了我们的需要,我们 可以考虑这个字母是数字0…255。然后是“输入” “大小”正好是输入文件的大小(以字节为单位) 有人能解释一下这句话是怎么说的吗 它是以某种形式写入的输入的大小 固定有限字母表(至少有2个“字母”)。为了我们的需要,我们 可以考虑这个

我正在读一篇关于topcoder的博客abt big O notation。

我遇到了下面的一段

关于输入大小的正式注释

我们开始谈论的“输入大小”到底是什么?在 形式定义这是以某种形式编写的输入的大小 固定有限字母表(至少有2个“字母”)。为了我们的需要,我们 可以考虑这个字母是数字0…255。然后是“输入” “大小”正好是输入文件的大小(以字节为单位)

有人能解释一下这句话是怎么说的吗

它是以某种形式写入的输入的大小 固定有限字母表(至少有2个“字母”)。为了我们的需要,我们 可以考虑这个字母是数字0…255。< /P>
该声明是关于使用符号表示信息的基本方法。您使用的符号越多(字母表越大),可以用更少的字符表示的信息就越多,尽管您可以用两个“字母”表示所有信息,即每个字符一位信息。使用数字0..255相当于使用8位,即一个字节(2^8=256)


在计算机编程中,通常使用字节,但在理论计算机科学中使用字节,因为它们具有相同的功能(您只需要更多字节),并且它使证明更易于编写。

此语句的意思如下。您必须表示输入以通过算法进行处理,即您必须“写下来”。你可以用字母(=符号)写下输入。符号的数量必须是有限的(否则您或算法无法理解),即它们来自固定的有限字母表(=一组可能的符号)。输入的大小是你用来写输入的字母数


在文中提到的示例中,字母表包含0到255之间的数字。这意味着每个字母都可以用ASCII字符书写。因此,您可以用ASCII字符写下您的输入。每个ASCII字符可以存储在一个字节中,即输入的大小(=ASCII字符数)是字节数。

让我通过示例进行解释

让我们来看一个分解(sub)问题:给定一个数
n
(非素数),找到它的任何一个不同于
1
n
的因子。显然,我们最多需要检查
sqrt(n)
数字才能找到一个。因此,这似乎是一个次多项式问题。那么,为什么它被认为是一个难题呢?这是因为我们通常只需要
log(n)
数字来写
n
,我们自然希望解决“易于写”的问题。但是,尽管与
n
相比,
sqrt(n)
似乎有点小,但与
log(n)
相比,这对我们来说太多了

这就是为什么在讨论问题的复杂性之前,我们需要先说一句“输入字母表”的原因