diff --git a/subjects/major/图论常见算法.md b/subjects/major/图论常见算法.md new file mode 100644 index 0000000..36e6b8d --- /dev/null +++ b/subjects/major/图论常见算法.md @@ -0,0 +1,15 @@ +## 图论常见算法 + +### Dijkstra算法 +用于求解单个源最短路问题: + +1. 初始化:将所有顶点的距离设为正无穷,源顶点设为0; +2. 迭代:从源顶点出发,遍历所有边,更新顶点的距离; +3. 检验:检查是否存在负权重环,如果有则返回错误; +4. 返回:返回所有顶点的距离。 + + + +### Bellman-Ford算法 + +### Bellman-Ford算法 \ No newline at end of file diff --git a/subjects/math/曲率推导.md b/subjects/math/曲率推导.md new file mode 100644 index 0000000..fda1a2b --- /dev/null +++ b/subjects/math/曲率推导.md @@ -0,0 +1,63 @@ +# 曲率的定义 + +## 1. 平面曲线的曲率 + +### 曲率定义 + +曲率是曲线的切线方向相对于弧长的变化率,表示经过单位弧长时转过多少角度,定义为: + +$$\kappa = \frac{d\theta}{ds}$$ + +其中: +- $\theta$ 是曲线的切线与水平方向的夹角(切线角) +- $s$ 是曲线的弧长 + +### 直观理解 + +对于圆来说,曲率是恒定的: +- 半径为 $R$ 的圆,其曲率为 $\kappa = \frac{1}{R}$ +- 半径越小,曲率越大,弯曲越厉害 + +### 计算公式 + +对于常见的曲线来说,其一般形式可以经过如下方式求得: + +$$ +\begin{aligned} +\tan \theta &= \frac{dy}{dx} \\ +\frac{d}{dx}\left(\tan \theta\right) \cdot \frac{d\theta}{dx} &= \frac{d^2y}{dx^2} \\ +\frac{d\theta}{dx} &= \frac{\frac{d^2y}{dx^2}}{1 + \left(\frac{dy}{dx}\right)^2} \\ +\kappa &= \frac{d\theta}{ds} \\ + &= \frac{d\theta / dx}{ds / dx} \\ + &= \frac{\frac{d^2y}{dx^2}}{\left[1 + \left(\frac{dy}{dx}\right)^2\right]^{3/2}} \\ +\end{aligned} +$$ + +对于参数方程的形式: +$$ +\begin{cases} +x = x(t) \\ +y = y(t) +\end{cases} +$$ + +其一般形式可以通过以下方式求解: + +$$ +\begin{aligned} +\frac{dy}{dx} &= \frac{dy / dt}{dx / dt} \\ + &= \frac{y'}{x'} \\ + +\frac{d^2y}{dx^2} &= \frac{d}{dx}\left(\frac{dy}{dx}\right) \\ + &= \frac{d\left(\frac{dy}{dx} \right) / dt}{dx / dt} \\ + &= \frac{d\left(\frac{y'}{x'} \right) / dt}{dx / dt} \\ + &= \frac{\frac{y''x' - y'x''}{(x')^2}}{x'} + = \frac{y''x' - y'x''}{(x')^3} \\ + +\kappa +&= \frac{\frac{d^2y}{dx^2}}{\left[1 + \left(\frac{dy}{dx}\right)^2\right]^{3/2}} \\ +&= \frac{\frac{y''x' - y'x''}{(x')^3}}{\left[1 + \left(\frac{y'}{x'}\right)^2\right]^{3/2}} \\ +&= \frac{y''x' - y'x''}{(x')^3} \cdot \frac{(x')^{3}}{(x'^2 + y'^2)^{3/2}} \\ +&= \frac{y''x' - y'x''}{(x'^2 + y'^2)^{3/2}} +\end{aligned} +$$