From a956b40e523533cdc41e528edac5a02bd6f4986d Mon Sep 17 00:00:00 2001 From: lmj01 Date: Tue, 9 Jul 2024 11:37:08 +0800 Subject: [PATCH] update --- cg/font.md | 4 ++ cpl/Java.md | 7 +++- dev-note/maven.md | 27 +++++++++++-- exercises/2024.md | 13 +++++++ exercises/index.md | 7 +++- exercises/math.md | 22 +++++++++++ exercises/numerical.calculation.md | 22 +++++++++++ exercises/polynomial.md | 62 +++++++++++++++++++++++++----- exercises/quadratic.equation.md | 60 ----------------------------- 9 files changed, 149 insertions(+), 75 deletions(-) create mode 100644 exercises/2024.md create mode 100644 exercises/numerical.calculation.md delete mode 100644 exercises/quadratic.equation.md diff --git a/cg/font.md b/cg/font.md index 1a38db3..2820c7e 100644 --- a/cg/font.md +++ b/cg/font.md @@ -1,4 +1,8 @@ # Font + +- [SLUG--Dynamic GPU Font Rendering and Advanced Text Layout ](https://sluglibrary.com/) + - [GPU-Centered Font Rendering Directly from Glyph Outlines](https://jcgt.org/published/0006/02/02/) + 字体在网页中的应用 去各大网站上看看其他网站默认的字体,一般都是对body样式中存在这样的值 diff --git a/cpl/Java.md b/cpl/Java.md index 2a809ba..6312ad8 100644 --- a/cpl/Java.md +++ b/cpl/Java.md @@ -8,6 +8,7 @@ - jdk17需要maven3.8.8及以上 - jdk21需要maven3.8.8及以上 +- [maven笔记](/dev-note/maven.md) ## 语言特性 @@ -154,7 +155,11 @@ public保证接口的向后兼容,内部的实现与size可能会改变, 这 4. spring ## SpringBoot -> 框架,快速开发,适合构建微服务系统,集成度较高,底层很难修改 + +框架,快速开发,适合构建微服务系统,集成度较高,底层很难修改 + +- [Spring 源码阅读系列](https://github.com/xuchengsheng/spring-reading) + - [掘金网站](https://juejin.cn/user/4251135018533068/posts) ### IoC diff --git a/dev-note/maven.md b/dev-note/maven.md index 6565a83..78206d1 100644 --- a/dev-note/maven.md +++ b/dev-note/maven.md @@ -1,19 +1,31 @@ # Maven +maven 是打包工具,执行还是需要调用Java + ## 命令 + 配置好环境后,使用vscode开发,不使用IDE + - mvn test 跑test下的所有类 - mvn test -Dtest=ReportTest 跑test下指定的类 - mvn compile 编译 - mvn clean -- mvn package +- mvn package // 打包后jar文件包含资源和编译的Java类 - mvn install - mvn clean install -Dmaven.test.skip=true ### springboot + +Spring Boot 通过 Spring Boot Maven Plugin 在 Apache Maven 中提供了对 Spring Boot 的支持。 + - mvn spring-boot:run - mvn package 打包后用java -jar来运行 +调用springboot打包后的文件启动服务 + +- java -jar target/spring-boot-artifacts-2.jar +- java -jar target/orth.war + ## 配置 ### config/setting.xml @@ -37,5 +49,14 @@ document.add(new Paragraph("hellos你好").setFont(f3)); ``` ## 工具 -[mvn的仓库](https://mvnrepository.com/) -[ Spring Initializr在线生成工程模板](https://start.spring.io/) \ No newline at end of file +- [mvn的仓库](https://mvnrepository.com/) +- [ Spring Initializr在线生成工程模板](https://start.spring.io/) +- [Spring-boot:repackage 和 Maven package](https://springdoc.cn/spring-boot-repackage-vs-mvn-package/) + + +### 开发配置 +```shell +cd matchyun-orthodontic +mvn spring-boot:run +cd .. +``` \ No newline at end of file diff --git a/exercises/2024.md b/exercises/2024.md new file mode 100644 index 0000000..9398a34 --- /dev/null +++ b/exercises/2024.md @@ -0,0 +1,13 @@ +# 2024 + +## [数学手册(原书第10版)](https://book.douban.com/subject/35350415/) + +有种观点,学习数学,起始是从自己开始的,并不是从书本上规划的路径学习起来的。能认识字后,找准自己的能理解的方向下去就可以了。我也不知道我是从那里看到这种观点的。 + +佐证这种观点,是历史上很多数学家的传记上就是这样描述的逻辑,这样才开拓了新的数学分支。 + +最近我的感受越来越支持这个观点,也是最近冒出一个人物,姜萍,读的中专,但是参加阿里巴巴全球数学竞赛得到12名的成绩,算是一个很努力的结果。 + +借鉴成功的历史事件是很好的助力,但是原创性的东西必须是从第一性原理出发,自主思考才是最好也最佳的实践过程。如果还我重新来学习,我一定会遵守这个准则。 + +第一性原理(First Principles)是一个哲学和科学概念,指的是基于最基本的、不可剥夺的事实或假设来推导复杂情况或理论的方法。第一性原理思维是一种强大的思考工具,它鼓励人们深入问题的本质,避免被传统思维或既定框架限制。通过这种方法,可以发现新的可能性和解决方案。然而,它也需要深入的专业知识和对基础概念的深刻理解。 \ No newline at end of file diff --git a/exercises/index.md b/exercises/index.md index 53d19cc..a6cbcd4 100644 --- a/exercises/index.md +++ b/exercises/index.md @@ -10,11 +10,10 @@ - [高中数学](/exercises/math.high.md) - [高等数学](/exercises/advanced.mathematics.md) - [数论](/exercises/number.theory.md) +- [数值计算](/exercises/numerical.calculation.md) - [几何](/exercises/geometry.md) - [线性代数](/exercises/linear.algebra.md) - [多项式](/exercises/polynomial.md) - - [二次方程](/exercises/quadratic.equation.md) - ## 物理学 @@ -35,3 +34,7 @@ - [github](https://github.com/lmj01/geogebra) + +### 感受 + +- [2024](/exercises/2024.md) \ No newline at end of file diff --git a/exercises/math.md b/exercises/math.md index 15fea76..725b338 100644 --- a/exercises/math.md +++ b/exercises/math.md @@ -36,6 +36,8 @@ 2. 鸽巢原理Pigeonhole principle(抽屉原理),是一个基本的组合数学原理,表明n+1个鸽子放置n个巢中,至少有一个巢有两个鸽子。 - 证明,是验证的过程 + +
西方数学发展史 @@ -57,6 +59,26 @@
+## 初等数学 + +### 几何 +初等数学几何学关注的对象多为点、线、面的度量性质,还有它们之间的位置关系等。 + + +## 高等数学 + +### 几何 + +#### 拓扑 + +相比初等几何,不再关注具体的度量意义上的东西,很单纯地关注空间对象在变形、拉伸、压缩等情况下的不变性,是一个相当抽象的数学分支。 + +拓扑学的主要分支包括一般拓扑学(点集拓扑)、代数拓扑、微分拓扑、组合拓扑和代数几何。 + +- [James Munkres. Topology]() +- [John L. Kelley General Topology]() +- [EH Spanier. Algebraic Topology]() + ## 观点
diff --git a/exercises/numerical.calculation.md b/exercises/numerical.calculation.md new file mode 100644 index 0000000..a794a80 --- /dev/null +++ b/exercises/numerical.calculation.md @@ -0,0 +1,22 @@ +# 数值计算 + +数值方法帮助了数学的发展,很多时候计算的人不关心是否存在根,而是用给定的方法,即算法,先计算出来看看结果才是重点,反过来又支持了算法的稳定性。 + +## 夹逼法 +> "夹逼法" 在数学中是一种求解数值的方法,特别是在逼近理论中。在英文中,它通常被翻译为 "squeezing theorem" 或 "sandwich theorem" +>> 这个术语描述的是一种技巧,通过证明一个未知的数值位于两个已知数值之间,并且这两个已知数值可以无限逼近未知数值,从而证明未知数值的特定属性或精确值。 + +## 根式求解 + +### 牛顿-拉夫森法 + +牛顿-拉夫森法提供了一种非常有效的方法来寻找多项式的近似根,先假设一个根x,再此处画一条曲线的切线,并找出与该切线与X轴相交的点x1,这样重复下去就可以找到近似的根。用公式表示就是 + +$$ +\text{记}x_{n}\text{为当前根的猜测值,则可以通过计算下一个猜测值}x_{n+1} \newline +x_{n+1} = x_{n} - \frac{f(x_{n})}{f^{'}(x_{n})} +$$ + +通常会收敛到最近的根,但也有例外,会导致得不到解 + +- [牛顿拉夫森方法的意外之喜--分形图形](https://mp.weixin.qq.com/s/vjteWAtDAVHXfRwKE_DeSw) \ No newline at end of file diff --git a/exercises/polynomial.md b/exercises/polynomial.md index 278c103..6e162df 100644 --- a/exercises/polynomial.md +++ b/exercises/polynomial.md @@ -1,18 +1,62 @@ # 多项式 -## 夹逼法 -> "夹逼法" 在数学中是一种求解数值的方法,特别是在逼近理论中。在英文中,它通常被翻译为 "squeezing theorem" 或 "sandwich theorem" ->> 这个术语描述的是一种技巧,通过证明一个未知的数值位于两个已知数值之间,并且这两个已知数值可以无限逼近未知数值,从而证明未知数值的特定属性或精确值。 +## 二次方程QuadraticEquation -## 牛顿拉夫森法 +### 一元二次不定方程 -牛顿-拉夫森法提供了一种非常有效的方法来寻找多项式的近似根,先假设一个根x,再此处画一条曲线的切线,并找出与该切线与X轴相交的点x1,这样重复下去就可以找到近似的根。用公式表示就是 +在数学的历史中,不定方程指的是没有给出具体解法的方程,或者解的个数不是有限的,可能是无限多的解。 $$ -\text{记}x_{n}\text{为当前根的猜测值,则可以通过计算下一个猜测值}x_{n+1} \newline -x_{n+1} = x_{n} - \frac{f(x_{n})}{f^{'}(x_{n})} +\text{一元二次方程是指最高次项为二次的单变量(一个未知数)方程,形式通常为} \newline +ax^2+bx+c=0, \text{,其中 a、b、和c是已知数,而x是未知数。当这种方程的系数a、b、和c是变量而不是具体的数值时,我们称之为不定方程。} $$ -通常会收敛到最近的根,但也有例外,会导致得不到解 +
+例题1 2024-5-16 -- [牛顿拉夫森方法的意外之喜--分形图形](https://mp.weixin.qq.com/s/vjteWAtDAVHXfRwKE_DeSw) \ No newline at end of file +$\text{已知A、n为正整数,满足}, A = (n-7)(n+8), \text{且A为完全平方数,那么n有最几个值,n的最小值是多少,n的最大值是多少?}$ + +分析:因为n在变化,可以把A缩放在某个区间来解题。使用换元法替换一个变量,这样就更容易理解了。 + +解: +$$ +\text{设}k=n-7\text{,则} \newline +A = (n-7)(n+8) \to A = k(k+15) = k^2 + 15k < k^2 + 16k < k^2 + 16k + 4 = (k+8)^2 \newline +\because A=k^2 + 15k \text{是完全平方数,所以} k^2+15 \text{必然在两个完全平方数A和} (k+8)^2 \text{之间。} +$$ + +这样就可以一一判断两个等式之间是否成立了。 + +$$ +k^2+15k=(k+1)^2 \to k=\frac{1}{13} \newline +k^2+15k=(k+2)^2 \to k=\frac{4}{11} \newline +k^2+15k=(k+3)^2 \to k=1 \to n=8 \to A=(8-7)(8+8)=1 \cdot 16=16=4^2 \newline +k^2+15k=(k+4)^2 \to k=\frac{16}{7} \newline +k^2+15k=(k+5)^2 \to k=5 \to n=12 \to A=(12-7)(12+8)=5 \cdot 20=100=10^2 \newline +k^2+15k=(k+6)^2 \to k=12 \to n=19 \to A=(19-7)(19+8)=12 \cdot 27 =2^2 \cdot 3 \cdot 3 \cdot 3^2=(2 \cdot 3 \cdot 3)^2 = 18^2 \newline +k^2+15k=(k+7)^2 \to k=49 \to n=56 \to A=(56-7)(56+8)=49 \cdot 64 =7^2 \cdot 8^2=(7 \cdot 8)^2 = 56^2 +$$ + +综上所述,n有4个值,最小的是8,最大的是56. + +
+ +
+例题2 2024-5-16 + +$\text{已知} n^3 + 2n^2 + 8n - 5 \text{是一个正整数的立方,则正整数的n的值可能是}$ + +解: + +$$ +n^3 < n^3 + 2n^2 + 8n - 5 < n^3 + 6n^2 + 12n + 8 = (n+2)^3 \newline +\text{可推出} \\\\ +n^3 + 2n^2 + 8n - 5 = (n+1)^3 \to n^2 - 5n + 6 = 0 \to \{因式分解可得n=2或3} +$$ + +$$ +\text{把结果待人方程也可以验证} \newline +\therefore 2^3 + 2 \cdot 2^2 + 8 \cdot 2 - 5 = 27 = 3^3 \newline +\therefore 3^3 + 2 \cdot 3^2 + 8 \cdot 3 - 5 = 64 = 4^3 +$$ +
\ No newline at end of file diff --git a/exercises/quadratic.equation.md b/exercises/quadratic.equation.md deleted file mode 100644 index daa2bba..0000000 --- a/exercises/quadratic.equation.md +++ /dev/null @@ -1,60 +0,0 @@ -# 二次方程 - -## 一元二次不定方程 - -在数学的历史中,不定方程指的是没有给出具体解法的方程,或者解的个数不是有限的,可能是无限多的解。 - -$$ -\text{一元二次方程是指最高次项为二次的单变量(一个未知数)方程,形式通常为} \newline -ax^2+bx+c=0, \text{,其中 a、b、和c是已知数,而x是未知数。当这种方程的系数a、b、和c是变量而不是具体的数值时,我们称之为不定方程。} -$$ - -
-例题1 2024-5-16 - -$\text{已知A、n为正整数,满足}, A = (n-7)(n+8), \text{且A为完全平方数,那么n有最几个值,n的最小值是多少,n的最大值是多少?}$ - -分析:因为n在变化,可以把A缩放在某个区间来解题。使用换元法替换一个变量,这样就更容易理解了。 - -解: -$$ -\text{设}k=n-7\text{,则} \newline -A = (n-7)(n+8) \to A = k(k+15) = k^2 + 15k < k^2 + 16k < k^2 + 16k + 4 = (k+8)^2 \newline -\because A=k^2 + 15k \text{是完全平方数,所以} k^2+15 \text{必然在两个完全平方数A和} (k+8)^2 \text{之间。} -$$ - -这样就可以一一判断两个等式之间是否成立了。 - -$$ -k^2+15k=(k+1)^2 \to k=\frac{1}{13} \newline -k^2+15k=(k+2)^2 \to k=\frac{4}{11} \newline -k^2+15k=(k+3)^2 \to k=1 \to n=8 \to A=(8-7)(8+8)=1 \cdot 16=16=4^2 \newline -k^2+15k=(k+4)^2 \to k=\frac{16}{7} \newline -k^2+15k=(k+5)^2 \to k=5 \to n=12 \to A=(12-7)(12+8)=5 \cdot 20=100=10^2 \newline -k^2+15k=(k+6)^2 \to k=12 \to n=19 \to A=(19-7)(19+8)=12 \cdot 27 =2^2 \cdot 3 \cdot 3 \cdot 3^2=(2 \cdot 3 \cdot 3)^2 = 18^2 \newline -k^2+15k=(k+7)^2 \to k=49 \to n=56 \to A=(56-7)(56+8)=49 \cdot 64 =7^2 \cdot 8^2=(7 \cdot 8)^2 = 56^2 -$$ - -综上所述,n有4个值,最小的是8,最大的是56. - -
- -
-例题2 2024-5-16 - -$\text{已知} n^3 + 2n^2 + 8n - 5 \text{是一个正整数的立方,则正整数的n的值可能是}$ - -解: - -$$ -n^3 < n^3 + 2n^2 + 8n - 5 < n^3 + 6n^2 + 12n + 8 = (n+2)^3 \newline -\text{可推出} \\\\ -n^3 + 2n^2 + 8n - 5 = (n+1)^3 \to n^2 - 5n + 6 = 0 \to \{因式分解可得n=2或3} -$$ - -$$ -\text{把结果待人方程也可以验证} \newline -\therefore 2^3 + 2 \cdot 2^2 + 8 \cdot 2 - 5 = 27 = 3^3 \newline -\therefore 3^3 + 2 \cdot 3^2 + 8 \cdot 3 - 5 = 64 = 4^3 -$$ -
\ No newline at end of file