当前位置: 首页 > news >正文

如何学习数学 | 数学家如何思考

学习数学的关键在哪里?

原创 遇见数学

不少人面对数学都会觉得高深莫测,甚至非常枯燥乏味。

只有当你真正走入它的世界,才会发现里面蕴含着无尽的智慧和美感。要想推开这座数学的大门,需要的不仅仅是背公式,或者做一堆练习题。

这里我想聊一聊,学习数学的几个核心要点。它们或许能引导你从基础迈向更深的理解,不仅仅是“会做题”,而是能真正体会到数学的内在美。

其实,无论学习的是数学或其他理科,文学、历史,甚至艺术,学习的核心原理都是相同的。

1. 需要理解,而不是记忆

首先,学习数学最重要的一点是理解,而不是记忆

有没有遇到过这种情况:刚刚考试前还背得滚瓜烂熟的公式,过些日子就忘得一干二净?这是因为没有真正理解那些公式背后的意义。

图片

数学远不只是一堆符号公式的堆砌,每一个定理、每一个公式都有存在的理由和背景。

举个例子吧,很多人学代数的时候,总觉得它就是列出和解开方程。但实际上,代数是我们用来表达关系、控制变量的工具,是一把探测现实世界的钥匙。要做的,不是死记硬背,而是去问自己:为什么这个公式成立?它背后意味了什么?只有理解了这些问题,公式才会变得鲜活,它不再是一个死板的规则,而是思维工具箱中的一件利器。

2. 学会读懂数学的语言

图片

数学有着它自己独特的“语言”。就像你学习中文、英语或其他任何一门语言,它也有它的语法和词汇。比如,、、 等等,它们不仅仅是符号,还是一种浓缩的思想。

数学语言的美妙之处在于,它能够简洁而精准地表达复杂的概念。你会发现,很多冗长的自然语言描述,往往可以通过一两个数学表达式就清晰表达出来。

所以,学习数学时,请确保能读懂并理解这些符号,它们是打开数学世界的“钥匙”。慢慢地,会发现自己不仅能看懂这些符号,还能用它们去构建属于自己的数学表达。

3. 培养逻辑推理的能力

图片

数学的核心,是逻辑推理。就像福尔摩斯侦探一样,步步为营地推进推理。每一个问题的解答,都像是在拼接一幅精妙绝伦的拼图。每一步推导,都必须清晰、严谨,没有漏洞。

例如,在证明中,每一步推理都要基于前面的结论,直到最终得出结果。这个过程不光是为了得到“正确答案”,更重要的是培养逻辑思维能力。这种思维方式不仅仅适用于数学,事实上,在任何需要分析问题、做出判断的领域,逻辑推理都是不可或缺的。

尝试多种解法,或者从不同的角度看问题,也是一种极好的训练。数学问题从来不只有一种解法,不同的路径往往能带你走向同一个答案,而探索这些路径的过程,也是求知中最迷人的部分。

4. 不只是解题

图片

数学是需要培养解决问题的艺术,而不是单纯的解题。所做的每一道题,不仅只为了得到一个答案,而是为了培养读懂、分析、解决问题的能力。这种能力会在面对复杂的现实世界时,展现出极大的价值。

有时,学生们会被困在题海中,机械重复着相似的题型,而没有真正深入思考问题的本质。其实,应该问自己:这道题背后要考察的是什么?学到的知识可以如何应用到其他类似问题中?

换句话说,数学为了让你具备独立思考、解决实际问题的能力。

5. 扎实的基础是一切的根本

数学学习,就像盖房子一样,地基必须打牢。如果你在基础阶段没有掌握好核心概念,那么在后续的学习中,问题会逐渐显现出来。

很多学生在遇到高阶数学时感到举步维艰,往往是因为前面的基础知识不够扎实。

学习新知识之前,确保对之前的内容有足够的掌握,尤其是那些看似简单但至关重要的概念,它们可是未来学习的基石。

6. 反思与总结

学习数学的过程,不应该是盲目的重复,而是有意识的反思和总结。每一次做完题或遇到陌生的题,都应该问自己:“我学到了什么?在哪些地方犯了错误?这些错误是偶然的,还是对哪个概念理解得不够深刻?”

通过不断地反思,就可以逐步提升自己的思维能力,避免在同一个地方跌倒两次。数学学习,是一个不断优化思维、修正错误的过程。

7. 合作与讨论

数学的学习不必一路都是孤独的。

与同学们一起讨论问题,交换思路,往往能带来意想不到的收获。有时,别人一个简单的解释,就能帮你豁然开朗。同样,当你能够向别人清楚地解释一个概念,说明对它的理解已经非常扎实了。

8. 保持好奇心,享受数学的乐趣

最后一点:希望各位朋友要保持好奇心。数学不只是必须要考的一门重要科目,它是一种探索世界的方式。

数学家们经常会因为一个简单的式子或形状而着迷,正是这种好奇心,推动了整个人类的数学进步。你也可以像他们一样,把数学当作一场冒险。去探索、去提问、去发现。享受这个过程,就会发现,数学的世界远比想象的更加广阔,也更加美丽。

数学和其他科目的学习就如登山,有时候会觉得路途艰险劳累,但当到达山顶时,会发现自己能看得更远,欣赏更多的壮丽风景,所有的努力都是值得的。


via:

  • 学习数学的关键在哪里?原创 遇见数学 科学演绎法 2024年09月09日 20:16 河南

    https://mp.weixin.qq.com/s/Iq-PvVa_-mWEhTuoKXkGjA


像数学家一样思考的10种方法(修订)

原创 Kevin Houston 科学演绎法

「译者 | 实验室的猫」语:数学是一门神奇而美丽的学科,不仅只是公式、数字和计算的堆砌,更是一种思维方式,一种独特的观察世界的方式。

下面文章译自Kevin Houston公开提供的《10 Ways To Think Like A Mathematician》一书的试读小册子,这篇简短介绍展示了如何像一位数学家那样思考,如何用数学的眼光看待问题,以及如何运用数学的思维方法思考的难题。(这本书似乎暂时还没有中文版)

作者:Kevin Houston, kevinhouston.net/blog/2010/09/hello-world/
译者:实验室的猫

让我们首先承认一个事实:学数学确实不容易。然而,我坚信——而且信念坚定——只要你能像数学家那样洞察问题,学习数学的过程就会变得更加轻松。

因此,我的使命就是引导每一位学生,如何从数学家的角度去洞察世界。

这本小册子,正如它的标题所述,给出了十种方法,让你更接近数学家的思维方式。实际上,这本小册子是我畅销书籍《如何像数学家一样思考》的试读版。如果你希望避免单纯的应试学习,渴望真正理解数学的精髓,那么这本书就是为你而写的。

我希望这本小册子能激发你的灵感。如果有的话,请告诉我。我很想听听你的想法。

1. 质疑一切

在我看来,数学的魅力在于其能够被验证。你无需盲目接受别人的观点。如果有人宣称某事是真的,你完全可以要求他们来证明它。

更进一步,如果你真的希望像数学家那样思考,甚至可以自己去尝试把它证出来。不要让别人喂饭给你!

图片

think-622689

你应该对他人的陈述持有怀疑的态度,试图找到反例来证明他们的错误。即便对方的观点是正确的,通过此种方式锻炼出的思维方式也是有益的。这种方式也有助于培养对于命题的敏感度。

比如,有人声称,从逻辑的角度思考,时间旅行是不可能的:如果时间旅行可能,那么我们自然会遇到很多来自未来的人。

对此,我能找到一些反驳的观点。比如,时间旅行只允许人向未来移动时间;时间旅行者不被允许与我们交流;时间旅行有一个范围,你不能回溯超过一年,而时间旅行还需要很多年才能实现(而且时间机器并不能被随时光运输)。

2. 写好每一句话

写好每一句话?你可能会问,这怎么会帮我像数学家一样思考?其实,一句完整准确的句子是论证的基础,高级数学更是关于证明的艺术,而不仅仅是得到正确的数值答案。

图片

然而,许多学生忽视了书写句子的重要性。他们可能会抱怨:“我来上大学不是为了写论文的!”、“但我的答案是正确的!”或者“你知道我想说什么的!”

但是,如果你想真正理解数学并清晰地思考,你需要遵循句子书写的规范,这会让你非常仔细地思考你所论证的内容。如果你不能把句子正确地写出来,那么可能真的不清楚正在写什么。

这也是一个学习更多并提升你的技能的好机会。无论在哪个主题上,良好的写作都是一项有用的技能。因此,当你在写数学论证时,不要忽视句子的重要性。通过书写精确、清晰的句子,将更好地表达自己的想法,更好地理解数学,也更能成为像数学家一样思考的人。

【附加内容】提高你的数学写作和思维的一种简单方法是要知道如何正确使用 蕴含符号。】

3. 逆命题的奥秘是什么?

形如 " A ⇒ B A \Rightarrow B AB " 的命题是数学的核心。我们也可以说“如果 为真,那么 就为真。而对于这样的命题,我们还有一个亲密的伙伴,那就是它的逆命题,写作 “ B ⇒ A B \Rightarrow A BA”。

  • 例如,“如果我是温斯顿·丘吉尔,那么我就是英国人”的反命题是“如果我是英国人,那么我就是温斯顿·丘吉尔”。

”这个例子生动地揭示了一个事实:即使一个命题为真,它的反命题并不一定为真。反命题可能真,也可能假。我们需要通过深入的研究才能得出明确的结论。

作为一名优秀的数学家,当遇到一个“如果 A A A,则 B B B 类型的命题时,会自然而然地提出:“那它的逆命题成立吗?”这个问题应当深深地烙印在你的数学思维中,成为你的数学工具箱中重要的一部分。

实际上,无论逆命题是否为真并不重要,真正重要的是这个过程能助力你的数学思维变得更为敏锐。顺便提一句,人们在处理 " A ⇒ B A \Rightarrow B AB " 时常犯的一个大错误是,他们认为如果 A A A 不为真,那么 B B B 也不为真。这是错误的,该命题只阐述了当 A A A 为真时会发生什么,而并未涉及到当 A A A 为假时的情况。那么,让我们一起挑战一下,像数学家一样思考,自己找出一个例子吧!

4. 探索逆否命题的奥秘

逆否命题(contrapositive)是陈述式 “ A ⇒ B A \Rightarrow B AB” 的对应形式, 即 “ n o t ( B ) ⇒ n o t ( A ) \mathbb{not}(B) \Rightarrow \mathbb{not}(A) not(B)not(A)” 。

例如:

  • ‘如果我是温斯顿·丘吉尔,那么我就是英国人’ 的逆否命题是 ‘如果我不是英国人,那么我就不是温斯顿·丘吉尔’。
  • ‘我不是美国人,因此我不是德克萨斯人’ 的逆否命题是 '如果我是德克萨斯人,那么我是美国人
  • x 2 − 4 x − 5 = 0 ⇒ x ≥ − 2 x^2 - 4x -5 =0 \Rightarrow x \geq -2 x24x5=0x2” 的逆否命题是 “ x < − 2 ⇒ x 2 − 4 x − 5 ≠ 0 x < -2 \Rightarrow x^2 -4x - 5 \ne 0 x<2x24x5=0”。

令人惊讶的是,逆否命题的真值与 “ A ⇒ B A \Rightarrow B AB” 的真值相同!也就是说,如果 “ A ⇒ B A \Rightarrow B AB” 为真,那么 “ n o t ( B ) ⇒ n o t ( A ) \mathbb{not}(B) \Rightarrow \mathbb{not}(A) not(B)not(A)” 也为真,反之亦然。

以上例子就为这一点提供了验证。这个概念初接触时可能难以理解,不少人都会有所质疑。实际上,有一个知名的教育实验与逆否命题的概念紧密相关,被称为华生选择任务(Wason’s selection task)。你是否愿意去试一试看能否通过这个测试呢?通过的人不足 。由于逆否命题在证明中的广泛应用,以及我们在日常推理中对逆否命题的常见误解,因此你应该好好地研究和理解它。

5. 考虑极端情况

在研究数学定理时,我们应该尝试将其应用于一些平凡的(trivial)或极端的值例子。例如,可以考虑将特定的数字取为 0 0 0 1 1 1,或者使用由 “ f ( x ) = 0 f(x)=0 f(x)=0” 定义的平凡函数,采用空集或平凡序列如 “ 1 , 1 , 1 , 1 , 1... 1,1,1,1,1... 1,1,1,1,1...”,或者考虑使用圆或直线等特殊情况。这些实例有助于我们更深入地理解定理,并能更清晰地揭示定理适用的情况。这种方法被称为“考虑极端的情况”。

图片
思考

[实验室的猫]:在数学中,“ t r i v i a l trivial trivial”通常翻译为“平凡的”或“显然的” ,将费马大定理描述为方程 a n + b n = c n a^{n}+b^{n}=c^{n} an+bn=cn n > 2 n > 2 n>2 没有非平凡解。显然,这个方程确实有解。比如 a = b = c = 0 a=b=c=0 a=b=c=0 对任何 n n n 都是解, a = 1 a = 1 a=1 b = 0 b = 0 b=0 c = 1 c = 1 c=1, 也一样。但是这种解是显然而无趣的,从而称为平凡。

这些实例有助于我们更深入地理解定理,并能更清晰地揭示定理适用的情况。

举个例子,考虑这样的陈述:“ y = x 2 , z = y 2 y=x^2,z=y^2 y=x2z=y2 ,因此 z ≠ x 2 z\neq x^2 z=x2”。这个推理看上去似乎合情合理,因为 y y y y 2 y^2 y2 通常是不同的,但实际上这并不正确。试想当 y = x = 1 y=x=1 y=x=1 的情况下, z z z 是等于 x 2 x^2 x2 的。这个例子清晰地展示了考虑极端例子的重要性,这种方法有助于我们更好地理解和运用数学定理。

另一个例子是考虑这个命题:“ 假设 a , b , c a,b,c a,b,c d d d 是整数。如果 a b = c d ab=cd ab=cd a = c a=c a=c ,则 b = d b=d b=d ”。要证明这个命题是错误的,我们可以采用极端例子的方法。为此,我们需要积累足够的例子并熟练掌握它们。假设 a = c = 0 a=c=0 a=c=0 ,那么我们可以选择 b = 2 b=2 b=2 d = 1 d=1 d=1 ,这样就满足了条件 a b = c d ab=cd ab=cd ,但 b ≠ d b\neq d b=d,从而推翻了这个错误的命题。

总之,考虑极端例子是一种有用的方法,它能够帮助我们更好地理解和应用数学定理。在数学研究中,可能会遇到需要快速想出例子的情况,因此我们需要积累足够的例子并熟练掌握它们,以便在需要时能够迅速套用。

6. 构建你自己的例子

真正的数学家会设计出他们自己的例子,无论是标准的、极端的、还是反例!

图片

让我们来看个较熟悉的例子,来体会整个流程吧。假设正在微积分的世界里探索函数的极大值和极小值。

首先需要理解函数是如何求导。然后,我们会了解到,那些导数值为零的点就是所说的驻点。接下来,会发现奇异点有三种形式:极大值、极小值和拐点。而函数的二阶导数能够帮我们确定这些驻点的类型。然后,我们就能看到一个具体的例子:这是一个函数,这是它的驻点,这是驻点的类型。这个过程看似简单,给定函数 “ f f f” ,对 “ f f f” 求导,然后求解 “ f ′ ( x ) = 0 f'(x) = 0 f(x)=0” ,再次求导得到 f ′ ′ ( x ) = 0 f''(x) = 0 f(x)=0,并且通过 f ′ ′ ( x ) = 0 f''(x) = 0 f(x)=0 的正负号判断驻点的类型。

这就是标准的处理方法。掌握了这个步骤,你就能轻松找出给定函数的极大值和极小值。然而,如果我换个角度问你:能否构造一个函数 “ f f f”,使其在 x = 2 x=2 x=2 处达到最大值,在 x = − 6 x=-6 x=6 处达到最小值?这无疑是对你理解程度的更大考验,难度也更大。然而,正是在挑战这样的问题过程中,你能深入理解数学的魅力。

因此,面对已解答的例子,你应当逆向思考,自创新问题。更有趣的是,你可以与朋友们共同创造这些问题,交换彼此的问题,从而获取更多的练习机会。你甚至可以组织一场竞赛,看谁能设计出最具挑战性,但又能解决的问题。

7. 假设在何处发挥作用?

我经常听到学生们说,他们觉得理解数学证明非常困难。实际上,这并不出乎意料,因为证明往往是出于逻辑和效率的考虑,而非为了提供对定理表述的深度理解,或者揭示如何发现证明的过程。学生们常常陷入困境,甚至无法独立下手。

图片

是的,理解证明的过程,无疑是迈向数学家之路最艰难的部分之一。《如何像数学家一样思考》的第 18 章全篇都是关于理解证明的各种策略——例如,分解证明,将证明应用于实例。我们只需考虑下面的技巧。

每个定理都有其假设。比如,毕达哥拉斯定理就会先假设平面上有一个直角三角形。这些假设在证明中必然会被使用,否则就成了无用之物。因此,积极寻找假设在何处被使用,你就能开始理解证明的过程。

有些假设可能不会直接阐明清楚。比如,证明可能会说“……根据定理 5.7,我们发现……”,而定理 5.7 可能需要更前面的某个假设。(顺便一提,如果一个定理在不同的证明中被反复使用,那它一定具有重要性,可能会被用在你的证明中,所以务必深入学习理解它。)

通过搞清假设,你就能开始步入证明的世界,学习其结构和内在联系。作为额外的奖赏,你的记忆也会得到加强,因为不再是被动接受信息,而是在主动探求知识。这种主动探求的过程,无疑能让你更好地理解和记住所学的内容!

8. 从复杂的一方开始

我最重要的一条建议是:在证明等价性时,通常最好从等式中较为复杂的一方开始,逐步替换以简化其复杂性。这样不仅能使问题更加清晰,还能让我们更加明确目标。

例如,想要证明对于所有的 n ∈ R n\in\mathbb{R} nR x ≠ n π 2 x\neq\frac{n\pi}{2} x=2nπ(其中 n ∈ Z n\in\mathbb{Z} nZ ),成立 tan ⁡ x + cot ⁡ x = 2 cosec ⁡ 2 x \tan x+\cot x=2 \operatorname{cosec} 2x tanx+cotx=2cosec2x 时,我们需要执行以下步骤:

t a n x + cot ⁡ x = sin ⁡ x cos ⁡ x + cos ⁡ x sin ⁡ x tan x + \cot x = \frac{\sin x}{\cos x} + \frac{\cos x}{\sin x} tanx+cotx=cosxsinx+sinxcosx, by substituting the definitions of tan and cot,

= sin ⁡ 2 x + cos ⁡ 2 x sin ⁡ x cos ⁡ x = \frac{\sin^2 x + \cos^2 x}{\sin x \cos x} =sinxcosxsin2x+cos2x

= 1 sin ⁡ x cos ⁡ x = \frac{1}{\sin x \cos x} =sinxcosx1, using s i n 2 x + cos ⁡ 2 x = 1 sin^2 x + \cos^2 x = 1 sin2x+cos2x=1

= 1 ( 1 / 2 ) sin ⁡ 2 x =\frac{1}{(1/2)\sin 2x} =(1/2)sin2x1, using a half angle formula,

= 2 cosec ⁡ 2 x =2 \operatorname{cosec} 2x =2cosec2x, by definition of cosec.

注意,复杂的一方(或者更准确地说,我们可以进行替代和简化的一方)始终在等式的一边。如果你从等式开始并尝试重新排列它(如许多人所做),那么你有可能陷入循环。你也可能冒着要证明假设的风险。

9. 提问"如果…会怎样?"

优秀的数学家善于提出这样的诘问:“假设……会怎样?”例如,若我们删掉某项假设,会有何影响?深度探求此类问题,我们能对为何某一结果为真,或者某条定义为何这样阐述,有更深一层的理解。有时候,减弱假设的力度,竟会带领我们走向新的定理的发现!

再举一个“假设”的例子,数学对象通常是在附加某些条件的前提下的集合。在最简单的层次上,我们可以将有限集定义为元素数量有限的集合,但也有更为复杂的例子,如群。(群是一种拥有特定"乘法"运算的集合,且这种乘法需要满足特定的性质。)

现在,假设我们有集合 A A A B B B ,我们可以构造他们的乘积 A × B A \times B A×B 。我们可以问:如果 和 各自具备某种性质,那么 是否也拥有同样的性质?例如,假设 A A A B B B 都是有限集,那么 A × B A \times B A×B 是有限集吗?答案是肯定的。如果 A A A B B B 都是无穷集,那么 A × B A \times B A×B 是无穷集吗?如果 A A A B B B 分别是群,那么 A × B A \times B A×B 是群吗?如果拓扑空间 A A A B B B 是紧致空间,那么 A × B A \times B A×B 也是吗?等等。

这个理念在于,我们总是通过提问,去扩展知识边界,加深我们的理解。

10. 交流沟通,知识的交融!

当克里斯托弗·泽曼爵士创立沃里克大学的数学研究所时,他提出的一个核心理念是:为了营造浓厚的数学气氛,研究所应当在走廊里摆放足够多的黑板,而不仅仅是在讲堂内,以便于人们随时停下脚步,互相交流和解释各自的研究。

图片

这种做法不仅可以鼓励合作,更重要的是,它可以让每个人的工作得到他人的检验。剑桥的艾萨克·牛顿研究所更是将这种理念发扬光大,在厕所、甚至在只运行两层的电梯里都设置了黑板!

与他人进行交流沟通有着无数的好处。解释你的工作会促使你更深入、更清晰地思考。你可以从别人那里学习,他们可以指出思维中的漏洞,或者提出解决问题的新思路。甚至你在解说的过程中,也可能获得新的启发。

因此,寻找一个可以交谈的人。没有找到?那就去寻找。如果在教师,试着坐到某人旁边,询问他们如何完成练习 3.2 或者其他的。就从这里开始你的数学之旅吧……


via:

  • 像数学家一样思考的10种方法(修订) 原创 Kevin Houston 科学演绎法 2023年08月20日 09:17 河南

    https://mp.weixin.qq.com/s/Z9h_KsoIZ3d0r_y8Iu_8IQ


  • 10 Ways ToThink Like AMath

    https://math.jhu.edu/~brown/courses/f19/Documents/10WaysToThinkLikeAMath.pdf

  • Kevin Houston – How to Think Like a Mathematician

    https://www.kevinhouston.net/httlam.html

相关文章:

如何学习数学 | 数学家如何思考

学习数学的关键在哪里&#xff1f; 原创 遇见数学 不少人面对数学都会觉得高深莫测&#xff0c;甚至非常枯燥乏味。 只有当你真正走入它的世界&#xff0c;才会发现里面蕴含着无尽的智慧和美感。要想推开这座数学的大门&#xff0c;需要的不仅仅是背公式&#xff0c;或者做一…...

职场沟通与行为

职场沟通与行为 引言 在职场上&#xff0c;你是否曾遇到过困惑的沟通&#xff1f;是否对同事的行为有过疑虑&#xff1f;这不仅是个别现象&#xff0c;而是我们这个时代工作文化中的普遍问题。许多职场的摩擦&#xff0c;来自沟通不畅或是行为不当。那么&#xff0c;如何才能…...

IIO(Industrial I/O)驱动介绍

文章目录 IIO&#xff08;Industrial I/O&#xff09;驱动是Linux内核中用于工业I/O设备的子系统&#xff0c;主要用于处理传感器数据采集和转换。以下是其关键点&#xff1a; 功能 数据采集&#xff1a;从传感器读取数据。数据处理&#xff1a;对原始数据进行滤波、校准等操作…...

关于vite+vue3+ts项目中env.d.ts 文件详解

env.d.ts 文件是 Vite 项目中用于定义全局类型声明的 TypeScript 文件。它帮助开发者向 TypeScript提供全局的类型提示&#xff0c;特别是在使用一些特定于 Vite 的功能时&#xff08;如 import.meta.env&#xff09;。以下是详细讲解及代码示例 文章目录 **1. env.d.ts 文件的…...

32单片机综合应用案例——物联网(IoT)环境监测站(四)(内附详细代码讲解!!!)

无论你身处何种困境&#xff0c;都要坚持下去&#xff0c;因为勇气和毅力是成功的基石。不要害怕失败&#xff0c;因为失败并不代表终结&#xff0c;而是为了成长和进步。相信自己的能力&#xff0c;相信自己的潜力&#xff0c;相信自己可以克服一切困难。成功需要付出努力和坚…...

【Flink系列】6. Flink中的时间和窗口

6. Flink中的时间和窗口 在批处理统计中&#xff0c;我们可以等待一批数据都到齐后&#xff0c;统一处理。但是在实时处理统计中&#xff0c;我们是来一条就得处理一条&#xff0c;那么我们怎么统计最近一段时间内的数据呢&#xff1f;引入“窗口”。 所谓的“窗口”&#xff…...

代码随想录算法训练营第三十五天-动态规划-01背包(二维)

动规五部曲 dp数组的含义&#xff0c;注意这是一个二维数组。dp[i][j] 第一维度代表“从0到第i个物品&#xff0c;而且包括选或不选的情况&#xff0c;即这一维度代表物品编号第二维度代表代表背包容量合在一起的意思是当背包容量是j时&#xff0c;从0到i个物品中选择任意物品…...

快速开发:用AI构造AI —— 打造属于个人的Copilot(M-聪明AI)

作品简介&#xff1a; 当今快速发展的AI时代&#xff0c;学会使用AI的同时&#xff0c;也可以融入AI&#xff0c;来打造自己的产品&#xff0c;我给我这个取名M-聪明&#xff0c; 是基于VUE 3 Spring Boot -Redis ChatGML RxJava SSE 的AI 服务平台。然后这款工具旨在为用户…...

Elasticsearch容器启动报错:AccessDeniedException[/usr/share/elasticsearch/data/nodes];

AccessDeniedException 表明 Elasticsearch 容器无法访问或写入数据目录 /usr/share/elasticsearch/data/nodes。这是一个权限问题。 问题原因&#xff1a; 1、宿主机目录权限不足&#xff1a;映射到容器的数据目录 /data/es/data 在宿主机上可能没有足够的权限供容器访问。 …...

用公网服务器实现内网穿透

首先需要一个公网服务器 下载frp 搜索github下载到frp&#xff0c;服务端frps/客户端frpc。。下载的时候要注意自己本地内网机的cpu版本和服务端cpu架构 我的电脑是mac M1PRO版本 下载的是&#xff1a;darwinarm64 比如 服务端一般是Linux&#xff08;Intel 64位CPU&#xf…...

Jmeter如何进行多服务器远程测试

&#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 JMeter是Apache软件基金会的开源项目&#xff0c;主要来做功能和性能测试&#xff0c;用Java编写。 我们一般都会用JMeter在本地进行测试&#xff0c;但是受到单…...

前端实习第二个月小结

时间飞快&#xff0c;第一次实习已经过去两个多月&#xff0c;作一些简单的总结和分享。 注&#xff1a;文章整体会比较轻松&#xff0c;提及的经历、经验仅作参考。 一、关于实习/工作内容 1、工作内容 近期做的是管理后台方面的业务&#xff0c;技术栈&#xff1a;前端re…...

C# 并发和并行的区别--16

目录 并发和并行 一.并发 定义 特点 代码示例 代码解释 二.并行 定义 特点 在C#中的体现 代码示例 代码解释 三.并发和并行的区别 四 .如何在C#中选择并发还是并行 1.考虑任务类型 2.代码示例 3.注意事项 五.总结 并发和并行 在编程领域,并发和并行是两个密切…...

Python编程与在线医疗平台数据挖掘与数据应用交互性研究

一、引言 1.1 研究背景与意义 在互联网技术飞速发展的当下,在线医疗平台如雨后春笋般涌现,为人们的就医方式带来了重大变革。这些平台打破了传统医疗服务在时间和空间上的限制,使患者能够更加便捷地获取医疗资源。据相关报告显示,中国基于互联网的医疗保健行业已进入新的…...

HBase实训:纸币冠字号查询任务

一、实验目的 1. 理解分布式数据存储系统HBase的架构和工作原理。 2. 掌握HBase表的设计原则&#xff0c;能够根据实际业务需求设计合理的表结构。 3. 学习使用HBase Java API进行数据的插入、查询和管理。 4. 实践分布式数据存储系统在大数据环境下的应用&#xff0c;…...

Java 读取 Windows 设备的唯一性标识及定位

在 Windows 系统中&#xff0c;获取设备唯一性标识及定位信息对设备管理、安全监控等场景意义重大。本文介绍 Java 中几种实现方法&#xff0c;如 JNA 库、WMI4Java 库及通过 JNI 结合 Windows API。 1. 使用 JNA 库读取 DEVPKEY_Device_ContainerId 在 Windows 系统中&…...

UE控件学习

ListView&#xff1a; item设置&#xff1a;使能在list设置为Entry类 Grid Panel&#xff1a; 常用作背包&#xff0c;每个格子大小可不相同 WidgetSwitcher&#xff1a; 用于切换页签 Wrap_Box&#xff1a; 自动横向排版子节点&#xff0c;超过一定范围则自动换行…...

1.Spring AI 从入门到实践

​Spring AI 从入门到实践 1.什么是Spring AI 2.使用Spring Boot&Spring AI快速构建AI应用程序 3.ChatClient&Chat Model简化与AI模型的交互 4.Spring AI Prompt:与大模型进行有效沟通 5.结构化输出大模型响应 6.实战:AI聊天机器人 Ben技术站关注Java技术&#x…...

2025年01月蓝桥杯Scratch1月stema选拔赛真题—美丽的图形

美丽的图形 编程实现美丽的图形具体要求: 1)点击绿旗&#xff0c;角色在舞台中心&#xff0c;如图所示&#xff1b; 2)1秒后&#xff0c;绘制一个边长为 140的红色大正方形&#xff0c;线条粗细为 3&#xff0c;正方形的中心为舞台中心&#xff0c;如图所示; 完整题目可点击下…...

FLASK创建下载

html用a标签 <!-- Button to download the image --> <a href"{{ url_for(download_file, filenameimage.png) }}"><button>Download Image</button> </a> 后端&#xff1a;url_for双大括号即是用来插入变量到模板中的语法。也就是绑…...

LDD3学习7--硬件接口I/O端口(以short为例)

1 理论 1.1 基本概念 目前对外设的操作&#xff0c;都是通过寄存器。寄存器的概念&#xff0c;其实就是接口&#xff0c;访问硬件接口&#xff0c;有I/O端口通信和内存映射I/O (Memory-Mapped I/O)&#xff0c;I/O端口通信是比较老的那种&#xff0c;都是老的串口并口设备&am…...

MySQL(高级特性篇) 06 章——索引的数据结构

一、为什么使用索引 索引是存储引擎用于快速找到数据记录的一种数据结构&#xff0c;就好比一本教科书的目录部分&#xff0c;通过目录找到对应文章的页码&#xff0c;便可快速定位到需要的文章。MySQL中也是一样的道理&#xff0c;进行数据查找时&#xff0c;首先查看查询条件…...

【FlutterDart】MVVM(Model-View-ViewModel)架构模式例子-http版本(30 /100)

动图更精彩 MVVM&#xff08;Model-View-ViewModel&#xff09; 特点 Model&#xff1a;负责数据管理和业务逻辑。 View&#xff1a;负责显示数据&#xff0c;通常是一个UI组件。 ViewModel&#xff1a;负责处理用户交互&#xff0c;更新Model&#xff0c;并将数据转换为View可…...

光谱相机的光谱分辨率可以达到多少?

多光谱相机 多光谱相机的光谱分辨率相对较低&#xff0c;波段数一般在 10 到 20 个左右&#xff0c;光谱分辨率通常在几十纳米到几百纳米之间&#xff0c;如常见的多光谱相机光谱分辨率为 100nm 左右。 高光谱相机 一般的高光谱相机光谱分辨率可达 2.5nm 到 10nm 左右&#x…...

.Net8 Avalonia跨平台UI框架——<vlc:VideoView>控件播放海康监控、摄像机视频(Windows / Linux)

一、UI效果 二、新建用户控件&#xff1a;VideoViewControl.axaml 需引用&#xff1a;VideoLAN.LibVLC.Windows包 Linux平台需安装&#xff1a;VLC 和 LibVLC &#xff08;sudo apt-get update、sudo apt-get install vlc libvlccore-dev libvlc-dev&#xff09; .axaml 代码 注…...

【论文阅读】基于空间相关性与Stacking集成学习的风电功率预测方法

文章目录 摘要0. 引言1. 空间相关性分析2. 风电功率预测模型2.1 Stacking 集成策略2.2 基学习器2.2.1 基于机器学习算法的基学习器2.2.2 基于神经网络的基学习器2.2.3 基于粒子群优化算法的超参数优化 2.3 元学习器2.4 基于空间相关性与Stacking集成学习的风电功率预测方法 3 算…...

什么是Spring Boot 应用开发?

一、引言 在当今的软件开发领域&#xff0c;Java 依然占据着重要的地位&#xff0c;而 Spring Boot 作为 Java 生态系统中极具影响力的框架&#xff0c;极大地简化了企业级应用的开发流程&#xff0c;提升了开发效率和应用的可维护性。它基于 Spring 框架构建&#xff0c;通过…...

选择saas 还是源码主要考虑

公司业务规模&#xff1a;小型企业可能会发现SaaS提供的即用型解决方案更符合其需求&#xff0c;而大型企业可能需要源码以实现更高的定制性和控制权。 公司技术专长&#xff1a;缺乏技术团队的企业可能会倾向于使用SaaS&#xff0c;而那些拥有强大IT部门的企业可能更适合管理…...

【JAVA 基础 第(19)课】Hashtable 类用法和注意细节,是Map接口的实现类

Map接口&#xff1a;存放的是具有映射关系的键值对&#xff0c;键映射到值&#xff0c;键必须是唯一的 Hashtable 类&#xff0c;Map接口的实现类,键和值都不能为nullHashtable 是同步的&#xff0c;是线程安全的 public class MapTest {public static void main(String[] arg…...

AI时代下 | 通义灵码冲刺备战求职季

AI时代下 | 通义灵码冲刺备战求职季 什么是通义灵码使用智能编程助手备战求职靠谱吗体验心得 AI时代下&#xff0c;备战求职季有了不一样的方法&#xff0c;使用通义灵码冲刺备战求职季&#xff0c;会有什么样的体验&#xff1f; 什么是通义灵码 在开始话题之前&#xff0c;首…...

如何将 session 共享存储到 redis 中

文章目录 一. 分布式 session 登录1.1 什么是分布式&#xff1f;1.2 Session 共享1.3 为什么服务器 A 登录后&#xff0c;请求发到服务器 B&#xff0c;不认识该用户&#xff1f;1.4 共享存储 二. Session 共享实现Redis三. 测试session共享四. cookie设置4.1 前端4.2 后端 一.…...

智能科技与共情能力加持,哈曼重新定义驾乘体验

2025年1月6日&#xff0c;拉斯维加斯&#xff0c;2025年国际消费电子展——想象一下&#xff0c;当您步入一辆汽车&#xff0c;它不仅能响应您的指令&#xff0c;更能理解您的需求、适应您的偏好&#xff0c;并为您创造一个独特且专属的交互环境。作为汽车科技领域的知名企业和…...

第4章 Kafka核心API——Kafka客户端操作

Kafka客户端操作 一. 客户端操作1. AdminClient API 一. 客户端操作 1. AdminClient API...

Debian 设定 tomcat 定时重启

目录 背景 过程记录 1、编辑sh文件&#xff0c;完成重启功能 2、设置sh的可执行权限 ​编辑 3、设置定时任务 背景 在Debian 12系统中&#xff0c;原本部署了两个tomcat&#xff0c;结果总是遇到CPU飙升到影响应用正常使用的程度&#xff0c;找了很久原因还是没有找到。 …...

mysql8.0 重要指标参数介绍

MySQL 8.0 引入了许多新的功能和优化&#xff0c;针对性能、可扩展性、可靠性以及安全性方面做出了显著改进。为了确保 MySQL 的高效运行&#xff0c;了解和配置 MySQL 的一些关键指标参数非常重要。以下是 MySQL 8.0 中的一些重要参数和指标&#xff0c;帮助你优化数据库性能。…...

SpringMVC (2)

目录 1. RequestMapping 注解介绍 2. RequestMapping 使用 3. RequestMapping与请求方式 3.1 RequestMapping 支持Get和Post类型的请求 3.2 RequestMapping 指定接收某种请求 3.3 GetMapping和PostMapping 4. 传参 4.1 通过查询字符串传参 4.2 在 Body 中传参 4.2.1 …...

【全面解析】深入解析 TCP/IP 协议:网络通信的基石

深入解析 TCP/IP 协议&#xff1a;网络通信的基石 导语 你是否曾好奇&#xff0c;现代互联网是如何实现全球设备之间的高速、稳定和可靠通信的&#xff1f;无论是浏览网页、发送电子邮件&#xff0c;还是进行视频通话&#xff0c;背后都离不开 TCP/IP 协议 的支撑。作为互联网…...

图数据库 | 19、高可用分布式设计(下)

相信大家对分布式系统设计与实现的复杂性已经有了一定的了解&#xff0c;本篇文章对分布式图数据库系统中最复杂的一类系统架构设计进行探索&#xff0c;即水平分布式图数据库系统&#xff08;这个挑战也可以泛化为水平分布式图数据仓库、图湖泊、图中台或任何其他依赖图存储、…...

【2024年华为OD机试】 (C卷,200分)- 反射计数(Java JS PythonC/C++)

一、问题描述 题目解析 题目描述 给定一个包含 0 和 1 的二维矩阵&#xff0c;一个物体从给定的初始位置出发&#xff0c;在给定的速度下进行移动。遇到矩阵的边缘时会发生镜面反射。无论物体经过 0 还是 1&#xff0c;都不影响其速度。请计算并给出经过 t 时间单位后&#…...

【微服务】SpringCloud 1-9章

1从Boot和Cloud版本选型开始说起 1.1Springboot版本选择 1.1.1git源码地址 https://github.com/spring-projects/spring-boot/releases/ 1.1.2官网看Boot版本 1.1.3SpringBoot3.0崛起 https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0-Release-Notes …...

Jmeter进行http接口并发测试

目录&#xff1a; 1、Jmeter设置&#xff08;1&#xff09;设置请求并发数&#xff08;2&#xff09;设置请求地址以及参数&#xff08;3&#xff09;添加结果数 2、启动看结果 1、Jmeter设置 &#xff08;1&#xff09;设置请求并发数 &#xff08;2&#xff09;设置请求地址…...

JavaScript语言的数据结构

JavaScript中的数据结构 引言 在编程的世界里&#xff0c;数据结构是处理和组织数据的重要方式。数据结构的选择往往直接影响到程序的性能和可维护性。JavaScript作为一门广泛使用的编程语言&#xff0c;在数据结构的设计和使用上也有其独特的特点。本文将深入探讨JavaScript…...

【数据分享】1929-2024年全球站点的逐日平均气温数据(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、湿度等指标&#xff0c;其中又以气温指标最为常用&#xff01;说到气温数据&#xff0c;最详细的气温数据是具体到气象监测站点的气温数据&#xff01;本次我们为大家带来的就是具体到气象监…...

DETRs with Collaborative Hybrid Assignments Training论文阅读与代码

关键词:协作混合分配训练 【目标检测】Co-DETR:ATSS+Faster RCNN+DETR协作的先进检测器(ICCV 2023)-CSDN博客 摘要: 在这篇论文中,作者观察到在DETR中将过少的 Query 分配为正样本,采用一对一的集合匹配,会导致对编码器输出的监督稀疏,严重损害编码器的区分特征学习…...

某国际大型超市电商销售数据分析和可视化

完整源码项目包获取→点击文章末尾名片&#xff01; 本作品将从人、货、场三个维度&#xff0c;即客户维度、产品维度、区域维度&#xff08;补充时间维度与其他维度&#xff09;对某国际大型超市的销售情况进行数据分析和可视化报告展示&#xff0c;从而为该超市在弄清用户消费…...

码云gitee 新建仓库 添加公钥

码云gitee 新建仓库 添加公钥 文章目录 码云gitee 新建仓库 添加公钥新建仓库生成公钥管理个人公钥安全验证 码云这个网站是一个代码托管平台&#xff0c;在国内可以无限制的使用&#xff0c;在这个网站上&#xff0c;也可以搜索到一些github上面的内容。进入这个网站&#xff…...

SQL 基础教程 - SQL SELECT INTO 语句

通过 SQL&#xff0c;您可以从一个表复制信息到另一个表。 SELECT INTO 语句从一个表复制数据&#xff0c;然后把数据插入到另一个新表中。 SQL SELECT INTO 语句 SELECT INTO 语句从一个表复制数据&#xff0c;然后把数据插入到另一个新表中。 注意&#xff1a; MySQL 数据…...

《leetcode-runner》如何手搓一个debug调试器——指令系统

前文&#xff1a; 《leetcode-runner》如何手搓一个debug调试器——引言 《leetcode-runner》如何手搓一个debug调试器——架构 文章目录 什么是指令系统指令的组成部分leetcode-runner支持哪些指令如何解析用户输入的命令行指令识别流程 仓库地址&#xff1a;leetcode-runner …...

基于预共享密钥的IPsec实验

一、实验目的 &#xff08;1&#xff09;了解IPsec的原理和协议运行机制&#xff1b; &#xff08;2&#xff09;掌握IPsec身份认证的预共享密钥的配置&#xff1b; &#xff08;3&#xff09;掌握用Wireshark工具抓包分析IPsec数据包格式和协议流程。 二、实验设备与环境 &…...

Golang Gin系列-2:搭建Gin 框架环境

开始网络开发之旅通常是从选择合适的工具开始的。在这个全面的指南中&#xff0c;我们将引导你完成安装Go编程语言和Gin框架的过程&#xff0c;Gin框架是Go的轻量级和灵活的web框架。从设置Go工作空间到将Gin整合到项目中&#xff0c;本指南是高效而强大的web开发路线图。 安装…...