算法开端

发布时间 2023-11-02 17:07:33作者: zhuwen

算法三大特性:

  1. 有穷性
  2. 确定性
  3. 可行性

评判标准:

  1. 正确性
  2. 可读性
  3. 健壮性
  4. 效率和存储量要求

表示时间复杂度的价:

\(O(1)\):常数时间价
\(O(n)\):线性时间价
\(O(log_n)\):对数时间价
\(O(nlog_n)\):线性对数时间价
\(O(n^k)\)\(k\) 次方时间价
\(O(1)<O(log_n)<O(n)<O(nlog_n)<O(n^k)\)

\(2^{10}=1024\)

  1. \(n\le 20\) \(O(2^n)\)
  2. \(20<n\le 100\) \(O(n^3)\)
  3. \(100<n\le 1000\) \(O(n^2)\)
  4. \(10000 < n\le 10^5\) \(O(nlog_n)\)
  5. \(10^5<n\le\) 10^6 \(O(n)\)
  6. \(n>10^8\) \(O(logn)\)