<分区>
我正在阅读 Simon Harris 和 James Ross 合着的《算法入门》一书。
在前几页中,有一节是关于理解大 O 表示法的。我阅读了这一节,并重新阅读了这节大约十几遍。我仍然无法理解一些事情。感谢任何帮助我摆脱困惑的帮助。
作者/作者声明“精确的操作数实际上并不那么重要。算法的复杂性通常根据执行功能所需的操作数的数量级来定义,用大写字母表示O 表示顺序,后跟表示相对于字母 N 表示的问题规模的一些增长的表达式。”
这真的让我很头疼,不幸的是,这一段之后的其他内容对我来说毫无意义,因为这一段应该为下一篇阅读打下基础。
本书没有定义“数量级”。我在谷歌上搜索了一下,结果只是告诉我数量级是用 10 的幂定义的。但这到底是什么意思?您是否采用操作数并以 10 的幂定义该数字,这等于复杂性?另外,什么被认为是“问题的规模”?问题的大小是操作的数量吗?或者问题的大小是“执行功能所需的操作数量的数量级”。
任何实际的例子和对此的正确解释都会很有帮助。
谢谢!