Skip to content

Commit

Permalink
Merge branch 'main' into gh-pages
Browse files Browse the repository at this point in the history
  • Loading branch information
Minsecrus committed Aug 29, 2024
2 parents d4715a8 + e6bdc5f commit 6bbb0b7
Showing 1 changed file with 6 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -186,8 +186,8 @@
代入,得
$$
\begin{aligned}
T(n) & \le 2(c\lfloor \frac{n}{2}\rfloor \lg\lfloor \frac{n}{2}\rfloor)+n\\
& \le cn\lg(\frac{n}{2})+n\\
T(n) & \le 2\left(c\lfloor \frac{n}{2}\rfloor \lg\lfloor \frac{n}{2}\rfloor\right)+n\\
& \le cn\lg \left(\frac{n}{2} \right)+n\\
& =cn\lg n-cn\lg 2+n\\
& =cn\lg n-cn+n\\
& \le cn\lg n
Expand Down Expand Up @@ -217,13 +217,13 @@

**主方法** 是用 **主定理** 来解某种递归式的通用的方法,分为三种情况。
它适合求解以下形式的递归式:
$$T(n)=aT(\frac{n}{b})+f(n)$$
$$T(n)=aT\left(\frac{n}{b}\right)+f(n)$$
这个递归式描绘了一种算法的运行时间:每个子问题规模相同;$f(n)$ 是分解和合并的运行时间。

#### 4.4.2 主定理

令 $a\ge 1$ 和 $b>1$ 是常数,$f(n)$ 是一个函数,$T(n)$ 是一个递归式:
$$T(n)=aT(\frac{n}{b})+f(n)$$
$$T(n)=aT\left(\frac{n}{b}\right)+f(n)$$
其中 $\frac{n}{b}$ 可以看作 $\left \lfloor \frac{n}{b} \right \rfloor$ 或 $\left \lceil \frac{n}{b} \right \rceil$,不影响渐进性质。

1. 若 $\exists \space \epsilon>0$,$f(n)=O\left(n^{\log_b a-\epsilon}\right)$,则 $T(n)=\Theta\left(n^{\log_b a}\right)$。
Expand All @@ -244,12 +244,12 @@ $$T(n)=aT(\frac{n}{b})+f(n)$$
T(n)=\left\{
\begin{array}{l}
\Theta(1) & n=1\\
aT(\frac{n}{b})+f(n) & n=b^i
aT\left(\frac{n}{b}\right)+f(n) & n=b^i
\end{array}
\right.
\end{equation}$$
其中 i 是正整数。那么:
$$T(n)=\Theta(n^{\log_ba})+\sum_{j=0}^{\log_bn-1}a^jf(\frac{n}{b^j})$$
$$T(n)=\Theta\left(n^{\log_ba}\right)+\sum_{j=0}^{\log_bn-1}a^jf\left(\frac{n}{b^j}\right)$$
2. 对所有正整数证明:向上取整和向下取整

### 4.5 Akra-Bazzi 方法
Expand Down

0 comments on commit 6bbb0b7

Please sign in to comment.