渐近符号max(m,n)= O(m + n)

时间:2014-06-27 15:48:46

标签: algorithm asymptotic-complexity

我已经详细研究了CLRS的算法简介,但有一点尚不清楚。

为什么max(m,n)= O(m,n)?

请解释一下,这将是很大的帮助!

2 个答案:

答案 0 :(得分:1)

max(m, n) = O(m+n)只是意味着,渐渐地说,max(m, n)的增长速度不会比m+n快。自max(m, n) < m + n m, n以来,所有max(m, n)都必须如此。请注意m等于nm + n,其中任何一个都保证小于m(只要n和{{1}是非负的,可以假设。)

答案 1 :(得分:1)

严格地说G(n)∈O(F(n))意味着G(n)属于渐近约束或等于某些C * F(n)的无限函数集。

大哦作弊表

  • 大哦 - 低于或等于
  • 小哦 - 绑定在等于
  • Theta - 等于,不低于或高于
  • 小欧米茄 - 绑定并且等于
  • Big Omega - 绑定或等于

<强>误解

表达某事物= O(f(n))在数学上是不正确的,尽管即使大多数教授犯了这个错误,也应该是∈O(f(n))

因此Max(M,N)∈O(M + N)是正确的,因为Max(M,N)渐近约束低于或等于 M + N.

所以1∈O(log n)∈O(n)∈O(n ^ 2)∈O(n ^ 2)∈O(n!)。

这花了我一些时间来解决这个问题但是一旦你这么做就很容易。一旦进入算法和数据结构中的更高级主题,完全掌握这一点至关重要。