﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-编程之路，漫漫修远兮</title><link>http://www.cppblog.com/master0503/</link><description>不須計較與安排 領取而今現在</description><language>zh-cn</language><lastBuildDate>Tue, 07 Apr 2026 21:35:30 GMT</lastBuildDate><pubDate>Tue, 07 Apr 2026 21:35:30 GMT</pubDate><ttl>60</ttl><item><title>有关数学</title><link>http://www.cppblog.com/master0503/archive/2008/08/26/59979.html</link><dc:creator>幻浪天空领主</dc:creator><author>幻浪天空领主</author><pubDate>Mon, 25 Aug 2008 17:15:00 GMT</pubDate><guid>http://www.cppblog.com/master0503/archive/2008/08/26/59979.html</guid><wfw:comment>http://www.cppblog.com/master0503/comments/59979.html</wfw:comment><comments>http://www.cppblog.com/master0503/archive/2008/08/26/59979.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cppblog.com/master0503/comments/commentRss/59979.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/master0503/services/trackbacks/59979.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;数学是科学之母。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;不知哪位大师这么说过，总之，只要是从事自然科学或是工程领域的，都离不开数学。至于经济领域，数学的影子也随处可见。历届诺贝尔经济学奖中，据统计仅一届没有数学家获奖，就是说，几乎每次都是数学家获得这个经济学最高奖励。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;而在计算机科学领域，数学的重要性也实在不必多言。抛开别的不谈，就算法这个计算机科学的灵魂分支，我个人就感觉是利用数学来对计算进行最佳规划的方式。所以，一个真正的计算机高手，尽管未必是个数学天才，也一定是个数学强手。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;先谈谈常用的数学吧。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;既然是单独的计算机科学，那么就不是所有的数学知识都得掌握的炉火纯青，既没必要，更不现实。数学的魅力，在数学领域中是推理的严密，在其他的应用领域中则是简洁而准确的描述。因此，数学的单项强化才是重点。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;貌似还有计算数学这个领域，听说就是专门研究算法的分支。在常规的环节，首先必须熟练掌握的数学知识有：<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.离散数学。其实这是几个学科的合称，包括数理逻辑、集合论、布尔代数、图论、组合数学。其中组合数学是重中之重。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.代数理论。古典线性代数理论应该是必须的。而现代的矩阵论也在很多地方有着重要应用。另外，近世代数还是可以了解下，近世代数的一些思想对于加深理解组合数学还是很有帮助的。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.分析数学。数学分析和复变函数这两个东西在整个IT领域中都是必要的。不过，就我本人感觉，这些东西在计算领域要看方向，比如图形学对这里要求较高而数据库就较低。另外，分析数学学的更多的是数学思想的提升而非解微积分题的正确率。毕竟，我们的最终目的是把算法思想变成一行行的代码，这具体的计算过程其实不必太过计较。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.数论。这是个相当独立的领域。数论是数学的皇后，数论和平面几何证明是为数不多的老少皆宜的数学分支，入门极其容易。学习数论时更多的还是那种思想的训练，数论的证明五花八门，但变成程序一般较为简易。个人认为，数论仅仅需要知道一些结论即可。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.几何。此几何非考试的几何题，而是计算几何。几何是很神奇的东西，人类的思维很直观就能得到的结论往往会成为程序员的极大障碍。仅仅两线段相交，为优化算法，前前后后可以有不下3种办法，而常见的跨立实验早已和最初的简单观察相距甚远。现在的图形学也是以几何为基础的，所以几何尤其是计算几何算法必须掌握。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;前面已经说过，数学是工具，它不会直接转化为我们的代码，不是个具有生产力的东西。数学的威力，永远是用在优化中。不论是表述的数学化，还是算法的形成，以及最后的优化，利用数学的论证以及已有结论是最佳手段。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在接下来的几篇随笔里，我将一些我做题中用到的数学知识以及算法简单的描述下。<img src ="http://www.cppblog.com/master0503/aggbug/59979.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/master0503/" target="_blank">幻浪天空领主</a> 2008-08-26 01:15 <a href="http://www.cppblog.com/master0503/archive/2008/08/26/59979.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>开始的征途</title><link>http://www.cppblog.com/master0503/archive/2008/08/22/59684.html</link><dc:creator>幻浪天空领主</dc:creator><author>幻浪天空领主</author><pubDate>Fri, 22 Aug 2008 12:28:00 GMT</pubDate><guid>http://www.cppblog.com/master0503/archive/2008/08/22/59684.html</guid><wfw:comment>http://www.cppblog.com/master0503/comments/59684.html</wfw:comment><comments>http://www.cppblog.com/master0503/archive/2008/08/22/59684.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/master0503/comments/commentRss/59684.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/master0503/services/trackbacks/59684.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;开博多日，首次开始发布我的随笔，之前一直不知道随笔是放在首页的文章，所以一直没去管。现在想起，就写下吧，先发个链接，以便查询我的相关文章。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在我开始的旅途中，我还是将我的ACM征途呈现在这里，算法学习的路程就是在一道道题目中走过的。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;首先是作为入门级的USACO的题目，链接如下：<a href="http://www.cppblog.com/master0503/category/7791.html">http://www.cppblog.com/master0503/category/7791.html</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;另外我顺带做点ZOJ的题目，链接是：<a href="http://www.cppblog.com/master0503/category/7804.html">http://www.cppblog.com/master0503/category/7804.html</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当USACO做完后就是OJ的训练了。网上的海量题目是练习的好地方，而算法学习不同于数理基础科学和文史科学，既需要理论的思考，大量的记忆和理解，程序实现也相当重要，只A不看或是只看不A都相当不可取。所以，除了题目的具体分析和代码以外，一类经典题目的思考和学习的文章也在其中。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;程序=算法+数据结构。算法和数据结构的重要性自不待言，而中间的&#8220;+&#8221;，也就是语言本身，也并非一文不值。须知，不论数据结构或是算法，在面对一个具体的problem时程序的语言是实现的方式。作为表达思想的媒介，语言的表达和结构最佳化是以方便于思想的表达。不论是自然语言中文、英文，或是作为程序员的语言C、C++、java，道理都是一样。在算法优化的基础之上，良好的细节处理对于程序最终实现的效率的提升也很明显。这些小的细节就不会在这里大量叙述了，在程序的优化时稍加注意即可。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;那么，继续我的征途吧！</p>
<img src ="http://www.cppblog.com/master0503/aggbug/59684.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/master0503/" target="_blank">幻浪天空领主</a> 2008-08-22 20:28 <a href="http://www.cppblog.com/master0503/archive/2008/08/22/59684.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>