zoukankan      html  css  js  c++  java
  • 上界、下界和确界

    定义

    $O$ 符号

    定义:令 $f(n)$ 和 $g(n)$ 是从自然数集到非负实数集的两个函数,如果存在一个自然数 $n_0$ 和一个常数 $c>0$,使得

    $$forall n geq n_0, f(n) leq cg(n)$$

    称 $f(n)$ 为 $O(g(n))$.

    用极限的判断方法是:

    $displaystyle lim_{n o infty}frac{f(n)}{g(n)} eq infty$ 蕴含着 $f(n) = O(g(n))$.

    $Omega$ 符号

    定义:令 $f(n)$ 和 $g(n)$ 是从自然数集到非负实数集的两个函数,如果存在一个自然数 $n_0$ 和一个常数 $c>0$,使得

    $$forall n geq n_0, f(n) geq cg(n)$$

    称 $f(n)$ 为 $Omega(g(n))$.

    $displaystyle lim_{n o infty}frac{f(n)}{g(n)} eq 0$ 蕴含着 $f(n) = Omega(g(n))$.

    $Theta$ 符号

    定义:令 $f(n)$ 和 $g(n)$ 是从自然数集到非负实数集的两个函数,如果存在一个自然数 $n_0$ 和两个正个常数 $c_1, c_2$,使得

    $$forall n geq n_0, c_1g(n) leq g(n) leq c_2g(n) $$

    称 $f(n)$ 为 $Theta(g(n))$.

    $displaystyle lim_{n o infty}frac{f(n)}{g(n)} = c$ 蕴含着 $f(n) = Theta(g(n))$.

    举例

    1、像插入排序这样的算法,由于运行时间从线性到平方,因此没有准确界。

    2、任一常函数是 $f(n)$ 为 $Theta(g(n))$.

    3、$f(n) = Theta f(n+1)$?不一定。例如 $2^n$ 满足,$n!$ 不满足。

    4、求 $f(n) = log(n!)$ 的确界

    因为 $log(n!) = sum_{i=1}^nlog(i)$,显然 $sum_{j=1}^nlog(j) leq sum_{j=1}^nlog(n)$,即 $sum_{j=1}^nlog(j) = O(nlogn)$;又 $sum_{j=1}^nlog(j) leq sum_{j=1}^{n/2}log(frac{n}{2}) = frac{n}{2}log(frac{n}{2}) = frac{n}{2}logn - frac{n}{2}log2$,那么 $sum_{j=1}^nlog(j) = Omega (nlogn)$,因此 $sum_{j=1}^nlog(j) = Theta (nlogn)$

  • 相关阅读:
    python3使用cx_Oracle连接oracle时,怎么传参sid或service_name
    CSS选择器
    Java + selenium Timeout接口用法介绍
    Selenium 中ExpectedConditions 用法说明
    jmeter跨线程调用参数
    Android Studio常用插件汇总
    js、jQuery实现文字从下到上(从右到左)无缝轮播、滚动效果
    package.json中的版本号
    mac 下检测网络状态的命令
    git clone 需要用户名密码的一个小问题
  • 原文地址:https://www.cnblogs.com/lfri/p/11631687.html
Copyright © 2011-2022 走看看