From 17494e79a8b4c69aebf5ffddf3174dcd8e437944 Mon Sep 17 00:00:00 2001 From: unlockable Date: Thu, 24 Nov 2022 22:20:59 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC11=E8=AF=BE=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 09FindingTheOptimum.tex | 2 +- 11CombinatoricsInGeometry.tex | 98 +++++++++++++++++++++++++++++ 12EulersFormula.tex | 115 ++++++++++++++++++++++++++++++++++ 离散数学.tex | 6 +- 4 files changed, 218 insertions(+), 3 deletions(-) create mode 100644 11CombinatoricsInGeometry.tex create mode 100644 12EulersFormula.tex diff --git a/09FindingTheOptimum.tex b/09FindingTheOptimum.tex index 4d3ce8a..ae0fdd8 100644 --- a/09FindingTheOptimum.tex +++ b/09FindingTheOptimum.tex @@ -152,7 +152,7 @@ TSP问题没有满意解。 第二步,用与上一张中在Planar code中运用的方法一样遍历这棵树,得到一个closed walk; -第三步,找一些“捷径”:如果从$i$到$k$需要经过$j$,而$j$在这之前已经到达过,那么我们就直接从$i$连接至$k$,如此重复直到我们不能再简化。 +第三步,找一些``捷径'':如果从$i$到$k$需要经过$j$,而$j$在这之前已经到达过,那么我们就直接从$i$连接至$k$,如此重复直到我们不能再简化。 \setcounter{subfigure}{0} \begin{figure}[H] diff --git a/11CombinatoricsInGeometry.tex b/11CombinatoricsInGeometry.tex new file mode 100644 index 0000000..de0f2d4 --- /dev/null +++ b/11CombinatoricsInGeometry.tex @@ -0,0 +1,98 @@ +\chapter{几何中的组合问题} +\section{对角线的交点} +\begin{definition} + 若多边形的每个内角都小于$\pi$,则称其为凸多边形。 +\end{definition} + +考虑一个凸$n$变形。假设它的任意三条对角线的不相交在同一点,那么这个凸$n$变形的对角线共有多少个交点? + +\begin{figure}[H] + \begin{center} + \begin{tikzpicture} + \node[above] at (0,2) {$A$}; + \node[left] at (-2,1) {$B$}; + \node[left] at (-1.5,-2) {$C$}; + \node[below] at (0.5,-3) {$D$}; + \node[right] at (2.5,-2.2) {$E$}; + \node[right] at (3,0.8) {$F$}; + \draw (0,2)--(-2,1)--(-1.5,-2)--(0.5,-3)--(2.5,-2.2)--(3,0.8)--cycle; + \draw (0,2)--(-1.5,-2)--(2.5,-2.2)--cycle; + \draw (-2,1)--(0.5,-3)--(3,0.8)--cycle; + \draw (0,2)--(0.5,-3); + \draw (-2,1)--(2.5,-2.2); + \draw (-1.5,-2)--(3,0.8); + \end{tikzpicture} + \end{center} +\end{figure} + +每个对角线的交点都与对角线的四个顶点组成的四边形一一对应,因此总数为$\dbinom{n}{4}$。 + +\section{分割区域数} +\begin{definition} + 若一组直线中任意一对直线不平行、任意三个不共点,则称这组直线\newnoun{在常态下}{in general position}。 +\end{definition} + +\begin{theorem} + 平面上$n$条在常态下的直线将平面分成$1 + \dfrac{n(n+1)}{2}$个区域。 +\end{theorem} + +\begin{proof} + 有0条直线时,有1个区域。设$n-1$条直线时,结论成立。那么当有$n$条直线时,新添加的一条直线被分为了$n$段,每一段都将这一段所在的区域分为两半,即区域数增加了$n$个。因此总数为 + \[1 + \frac{n(n-1)}{2} + n = 1 + \frac{n(n+1)}{2}\eqper\qedhere\] +\end{proof} + +或者还有另一种证法: +\begin{proof} + 用矩形把所有的交点都框住,并保证矩形的边不与任何一条直线平行。我们可以把每个区域都与这个区域的最靠下的顶点(或者是矩形的边的某个部分)建立一一映射,即区域的总数为$n+1 + \dbinom{n}{2} = 1 + \dfrac{n(n+1)}{2}$。 +\end{proof} + +\section{凸多边形:Happy End Problem} +试证明:平面上任5个点(任三点不共线)中总能选出四个点组成凸四边形。 + +\begin{proof} + 称包含这五个点的最小凸多边形为凸包。 + + 按凸包的边数分类: + \begin{figure}[H] + \subfloat[五条边]{ + \begin{tikzpicture} + \node[draw=black, circle] (a) at (18:2) {}; + \node[draw=black, circle] (b) at (90:2) {}; + \node[draw=black, circle] (c) at (162:2) {}; + \node[draw=black, circle] (d) at (234:2) {}; + \node[draw=black, circle] (e) at (306:2) {}; + \draw (a)--(b)--(c)--(d)--(e)--(a); + \end{tikzpicture} + } + \hfill + \subfloat[四条边]{ + \begin{tikzpicture} + \node[draw=black, circle] (a) at (-1,1) {}; + \node[draw=black, circle] (b) at (2,1.2) {}; + \node[draw=black, circle] (c) at (-0.8,-1) {}; + \node[draw=black, circle] (d) at (1, -0.8) {}; + \node[draw=black, circle] at (0,0) {}; + \draw (a)--(b)--(d)--(c)--(a); + \end{tikzpicture} + } + \hfill + \subfloat[三条边]{ + \begin{tikzpicture} + \node[draw=black, circle] (a) at (-1.5,-1) {}; + \node[draw=black, circle] (b) at (1.5,-1) {}; + \node[draw=black, circle] (c) at (0,2) {}; + \draw (a)--(b)--(c)--(a); + \node[draw=black, circle] (d) at (-0.4,0.3) {}; + \node[draw=black, circle] (e) at (0.5, 0) {}; + \draw (d)--(e); + \draw[blue!30] (a)--(d); + \draw[blue!30] (b)--(e); + \end{tikzpicture} + } + \end{figure} + 前两种情况显然。对第三种情况,根据鸽巢原理,一定有两个在边界上的点在内部点相连得到的直线的同一侧。将这四个点连接起来就能得到一个凸四边形。 +\end{proof} + +推广:最多在平面上找多少个点,使得其中找不到凸$n$边形? + +这个问题至今没有解决,猜想为$2^{n-2}$个。 \ No newline at end of file diff --git a/12EulersFormula.tex b/12EulersFormula.tex new file mode 100644 index 0000000..e262b89 --- /dev/null +++ b/12EulersFormula.tex @@ -0,0 +1,115 @@ +\chapter{Euler's Formula} +\section{平面图} +\begin{definition} + 如果图$G = (V, E)$的所有顶点和边可以在一个平面上图示出来,而使各边仅在顶点处相交,则图$G$称为平面图,它的平面图示称为图$G$的\newnoun{平图}{planar graph};否则称$G$为非平面图。 +\end{definition} + +需要注意的是,有些图形从表面上看有几条边是相交的,但是不能就此肯定它不是平面图,下面这个图就是一个例子: +\begin{figure}[H] + \centering + \subfloat[最初的图形]{ + \begin{tikzpicture} + \node[draw=black, circle] (a) at (0,0) {}; + \node[draw=black, circle] (b) at (3,0) {}; + \node[draw=black, circle] (c) at (3,2) {}; + \node[draw=black, circle] (d) at (0,2) {}; + \node[draw=black, circle] (e) at (1.5,3) {}; + \draw (b)--(a)--(d)--(c)--(b)--(e)--(a)--(c)--(e)--(d); + \draw[opacity=0] (a).. controls (4,-1) ..(c); + \end{tikzpicture} + } + \hspace{2cm} + \subfloat[调整边的画法后的图形]{ + \begin{tikzpicture} + \node[draw=black, circle] (a) at (0,0) {}; + \node[draw=black, circle] (b) at (3,0) {}; + \node[draw=black, circle] (c) at (3,2) {}; + \node[draw=black, circle] (d) at (0,2) {}; + \node[draw=black, circle] (e) at (1.5,3) {}; + \draw (b)--(a)--(d).. controls (2,4.5) ..(c)--(b)--(e)--(a).. controls (4,-1) ..(c)--(e)--(d); + \end{tikzpicture} + } +\end{figure} + +\section{面和边界} +\begin{definition} + 设$G$是一连通平面,由图中的边所包围的区域,在区域内既不包含图的顶点,也不包含图的边,这样的区域称为$G$的一个\newnoun{面}{face},有界的区域称为有界面,无界的区域称为无界面。 + + 包围一个面的的诸边所构成的回路称为这个面的边界。面$F$的边界的长度称为该面的度数,记为$d(F)$。 +\end{definition} + +\begin{figure}[H] + \centering + \begin{tikzpicture} + \node[draw=black, circle] (a) at (-3,0) {}; + \node[draw=black, circle] (b) at (0,0) {}; + \node[draw=black, circle] (c) at (1,2) {}; + \node[draw=black, circle] (d) at (1,-2) {}; + \node[draw=black, circle] (e) at (5,0) {}; + \node[draw=black, circle] (f) at (2,0) {}; + \draw (f)--(e)--(c)--(d)--(b)--(c); + \draw (b)--(a).. controls (1,4).. (e) .. controls (3.5,-1.5).. (d) .. controls (-1.5, -1.5) .. (a); + \node at (-3.5,0) {$A$}; + \node at (-0.3, 0.3) {$B$}; + \node at (1.3,2.3) {$C$}; + \node at (1, -2.5) {$D$}; + \node at (5.5,0) {$E$}; + \node at (2, 0.5) {$F$}; + \node at (-0.7,-0.7) {$r_1$}; + \node at (0.5,0) {$r_2$}; + \node at (1.5, 1) {$r_3$}; + \node at (0,1) {$r_4$}; + \node at (4,2) {$r_5$}; + \end{tikzpicture} +\end{figure} + +在上图中,$d(r_1) = 3, d(r_2) = 2, d(r_3) = 5, d(r_4) = 4, d(r_5) = 3$。 + +\begin{theorem} + 有限平图面的度数之和为其边数的两倍: + \[\sum d(f) = 2 \vert E \vert\eqper\] +\end{theorem} + +\begin{proof} + 任意一条边只可能是下面两种情况中的一种: + \begin{enumerate} + \item 它是两个面的共同边,在两个面的度中分别被计算了一遍; + \item 它是一个面边界的重复,在这个面的度中被计算了两遍。\qedhere + \end{enumerate} +\end{proof} + +\section{欧拉公式} +\begin{theorem}[Eular's Formula] + 设$G$为一连通平图,$v$为其顶点数,$e$为其边数,$f$为其面数,那么有 + \[v - e + f = 2\eqper\] +\end{theorem} + +\begin{proof} + 对面的数量进行归纳。 + + 若$f = 1$,则$G$为一棵树,且$e = v - 1, f = 1$,因此$v - e + f = v - v + 1 + 1 = 2$成立。 + + 设对于面数小于$n$的所有连通平图定理成立。那么对于面数为$n$的连通平图$G$,任选$G$的一条非桥的边$a$,那么$G-a$是连通平图,且$f(G-a) = n - 1$。由归纳假设有$v(G-a) - e(G-a) + f(G-a) = 2$,同时$v(G-a) = v(G), e(G-a) = e(G) - 1, f(G-a) = f(G) - 1$,因此$v(G) - e(G) + f(G) = 2$。 +\end{proof} + +\begin{theorem} + 设$G$为一简单连通平图,其点数$v \geq 3$,其边数为$e$,那么$e \leq 3v - 6$。 +\end{theorem} + +\begin{proof} + 设$G$的边数为$f$,那么每一个面的度数都不小于3;同时各面的度数和为$2e$,这意味着 + \[3f \leq \sum d(F) = 2e, f \leq \frac{2}{3}e\] + 代入Eular's Formula, + \[2 = v - e + f \leq v - e + \frac{2}{3}e\] + 整理可得$e \leq 3v - 6$。 +\end{proof} + +这个定理不是充分的,满足此条件的图有可能不是平图。 + +上面的定理利用了``每个面的度都不小于3''这一事实。如果有图的面度都不小于$k$呢? +\begin{corollary} + 对每个面的度至少为$k$的连通平图,有 + \[e \leq \frac{k(v-2)}{k-2}\eqper\] +\end{corollary} + +证明与前面的定理是类似的。 \ No newline at end of file diff --git a/离散数学.tex b/离散数学.tex index 3c7acf6..08de957 100644 --- a/离散数学.tex +++ b/离散数学.tex @@ -31,7 +31,7 @@ \newtheorem{axiom}{公理}[section] \newtheorem{definition}{定义}[section] \newtheorem{lemma}{引理}[section] -\newtheorem{corollary}{推论}[theorem] +\newtheorem{corollary}{推论}[section] \newtheorem*{corollary*}{推论} \newtheorem{example}{例}[section] \newtheorem{proposition}{命题}[section] @@ -55,7 +55,7 @@ \author{} \date{} % linespread{1.5} -% \includeonly{10MatchingsInGraphs.tex} +% \includeonly{12EulersFormula.tex} \begin{document} \maketitle @@ -76,4 +76,6 @@ \include{08Trees.tex} \include{09FindingTheOptimum.tex} \include{10MatchingsInGraphs.tex} + \include{11CombinatoricsInGeometry.tex} + \include{12EulersFormula.tex} \end{document} \ No newline at end of file