首页 » 编程语言 » 算法设计与分析这门课对计算机专业的很重要吗?里面涉及高数内容看不懂啊,怎么办😱_电脑算法基础知识大全

算法设计与分析这门课对计算机专业的很重要吗?里面涉及高数内容看不懂啊,怎么办😱_电脑算法基础知识大全

访客 2025-04-19 0

扫一扫用手机浏览

文章目录 [+]

算法设计与分析这门课对计算机专业的很重要吗?里面涉及高数内容看不懂啊,怎么办😱

如果单纯行业来说肯定重要,如果你想达到某个级别就重要。

就跟练习武功一样,如果你想达到11级12级可能更高到级别就需要算法了。

算法设计与分析这门课对计算机专业的很重要吗?里面涉及高数内容看不懂啊,怎么办😱_电脑算法基础知识大全 编程语言

如果你有条件,我的建议你还是可以好好学习一下,然后写一些DEMO出来。

如果你只是找份工作,在这个行业没有报太多到奢望,那就无所谓了。随便找个教程学习一下就能找工作了。

就单个学科而已算法设计和分析这门课程是一个基础学科,对于从事计算机行业的人员而言肯定是很重要的。如果想从事算法类的岗位这门课程是一个核心课程,而对于从事其他开发类的岗位这门课程也是决定了能否写出更简洁,更高效的代码的前提。

但是从另一个角度去分析,计算机编程技术是需要不断实践的一门科目,有些科目也许一开始看不懂。但是在一些相关联的科目有了一定的经验积累下,就有可能辅助您了解一些以前不太了解的科目。

举个例子在日常工作和学习的过程中,经常要接触的是数据结构里面的知识,一些现成的例子或者开源的代码中可以学习到很多《算法设计与分析》这方面的知识。基础知识点也是如此一点一滴的积累的,暂时的不了解不是学习能力问题,而是计算机的一些专业知识本来就有一些门槛。为什么很多培训班没有这类型的科目呢?这一类的基础科目本来就是最消耗学习成本,最折磨学习者热情的科目。不要因为有些内容无法了解就放弃,可以当成枕头书,偶尔翻看一下。对于某些知识点,可以一步一步的学习和查资料。在这里祝您学习愉快,在学习的过程中享受学习的快乐。

计算机编程算法和数学有什么关系

站在程序员角度,常用算法与数学没有一毛钱的关系,仅是评估算法是定量分析下。但对多数程序员而言,这些常用算法还需要再自己评估吗?平时只是调用库函数而已。

站在科研人负角度,解决某一具体问题,通常要采用数学模型进行建模分析,但这个模型与实用算法之间通常有非常大的差距。

结论:是程序员的话,深刻理解常见算法,并应用其解决自己工作中的常见问题,不要老想到数学家的事!是科研人员的话,多多发论文,多申请基金,反正现在国家在基金支助上不差钱,就不要想着什么实用了,这么多年都证明:真正实用的是少数!

数学对于计算机算法编程来说非常重要。我主要从下面两个方面来说明它为何这么>紧张/p>

一. 培养逻辑思维>本领/strong>

数学和算法编程都需要较强的逻辑思维能力,程序代码的逻辑结构、前后联系及处理方式都需要较强的逻辑思维能力,而数学学得好,逻辑思维能力强,通常算法编程领悟也会更深。

二. 数学应用于算法编程

这一点应该是数学与算法编程比较相关的重要原因,无论是计算机的底层还是非底层,数学知识到处都有体现。例如计算机底层的二进制、机器学习和深度学习的梯度推导、SVD分解、张量分解、PCA求特征值、优化问题、密码学的大数分解、概率图模型等等都是与数学特别相关。下面我随便举两个例子,可以自己>领会/p>

例1: 给定一个数x,开平方并取倒数。

代码实现如下

这是当年的经典游戏雷神之锤3里面的代码,经测试这段代码比(float)(1.0/sqrt(x))快4倍,计算性能有质的飞跃。为此还专门有一篇论文《Fast Inverse Square Root》讲解这个代码的数学原理,感兴趣的同学可以找一下这篇文章研究一下。

例2:给定一个数n,n可能非常大,比如10的18次方这么大,求x^2+y^2=n的解。

如果不用数学知识,直接暴力搜索,时间复杂度为O(n),效率低下,而且按目前的计算机水平也很难算出来。如果了解Brahmagupta–Fibonacci identity、Pollard-rho分解法、二次同余方程的解、欧几里德辗转相除等数学知识,那么求解这个问题的时间复杂度大大降低,保证0.2秒内出结果。

如果工作是算法岗位,数学更加特别重要,因为机器学习、数据挖掘、NLP等方向的底层原理基本都与数学脱离不开关系。

严格的来说,计算机编程算法,是数学的一个具体分枝,在高中数学中,大家都要学习程序框图,而程序框图,是编程的关键。在计算机早期的发展过程中,计算机程序设计是归入数学系,要学习布尔代数,逻辑等很多课程,随着社会的发展,计算机的应用越来越广泛,计算机和其他的知识结合越来越多,计算机发展成为一个专门的学科,但,它的基础是数学,是逻辑思维。

科学计算,数值计算,几何运算,线性代数,离散数学,概率论,统计论,高等数学,工程数学,向量和矩阵运算,时域变换,频域变换……这些算法中涉及的知识,都是数学。数学是一切学科的基础及演变,计算机编程算法也是基于数学之上。逻辑不是算法仅有的特征,数学更需要逻辑。

如果是从事基础算法工作,必需要有深厚的数学理论功底。数学+业务知识,是算法工作的标配。如果是从事算法的应用,那么则不需要太深入了解数学,但也要做到知而会用。

实际工作中,大部分算法岗位都算应用级别。利用现有开源库,修修改改,拆分重组。借鉴多于研创,说得好听点就是,合理充分利用资源,站在巨人的肩膀上,差异化创新。

如果你想在算法领域上走得远站得高,请好好学习数学。

谢谢大家。

标签:

相关文章