2018年 研一上學(xué)期學(xué)完《數(shù)值積分》的感想,今天翻簡(jiǎn)書突然看到算墨,順手一發(fā)布哈哈哈
作為一個(gè)頭發(fā)長見識(shí)短程序媛宵荒,之前一直都聽說,學(xué)數(shù)學(xué)的人比學(xué)計(jì)算機(jī)的人算法搞得好净嘀,就很懵报咳,從大學(xué)時(shí)候?qū)W習(xí)的c語言,java語言面粮,寫些簡(jiǎn)單的小算法程序少孝,比如寫個(gè)計(jì)算階乘的遞歸函數(shù),用j2ee做個(gè)網(wǎng)站等熬苍,竟然覺得計(jì)算機(jī)語言之間相通呀稍走,只要知道語法規(guī)范,誰都可以編程序柴底。
天真婿脸,真是對(duì)算法一無所知。盡管學(xué)習(xí)深度學(xué)習(xí)算是感受到了數(shù)學(xué)在算法方面的重要性柄驻,但是深度學(xué)習(xí)的大神們已經(jīng)把該用的公式狐树,梯度下降用到的導(dǎo)數(shù)都已經(jīng)給好了公式,搞懂梯度下降也沒花時(shí)間深究鸿脓,還是對(duì)數(shù)學(xué)與算法之間有個(gè)很淺的意識(shí)抑钟。研究生面試碰到過一個(gè)題涯曲,應(yīng)該說在不知覺中感受到了算法與編程是兩回事,題目是計(jì)算100的階乘在塔,好像很簡(jiǎn)單哎幻件,不就是寫個(gè)遞歸函數(shù)嘛。寫完函數(shù)蛔溃,不到最后一刻不交試卷的性格使我多想了兩遍绰沥,一定有坑,怎么會(huì)考我這么簡(jiǎn)單的內(nèi)容贺待。果不其然徽曲,經(jīng)過查閱一下,計(jì)算機(jī)對(duì)于100的階乘結(jié)果根本無法計(jì)算麸塞,因?yàn)閮?nèi)存溢出秃臣,無法表示這么大的數(shù)字,最后需要用到什么移位喘垂,使用加法來完成甜刻,這就很神奇了。
所以為什么要寫這一篇感想正勒,因?yàn)樵谘幸粩?shù)值微分的課程中得院,將數(shù)學(xué)和計(jì)算機(jī)緊緊綁在一起,對(duì)于一個(gè)具體的實(shí)際問題章贞,我們需要一個(gè)數(shù)學(xué)模型祥绞,然后利用計(jì)算機(jī)去求解,可能只是近似解鸭限。所以蜕径,對(duì)于一個(gè)計(jì)算公式,都需要計(jì)算機(jī)來計(jì)算败京,對(duì)于一個(gè)只需要近似解的復(fù)雜計(jì)算兜喻,簡(jiǎn)化計(jì)算公式,減少計(jì)算次數(shù)可以有效的提高計(jì)算效率赡麦,減少時(shí)間復(fù)雜性和控件復(fù)雜性朴皆。
以計(jì)算多項(xiàng)式的值為例:
所以算法,計(jì)算的方法泛粹,不僅是解決一個(gè)具體問題提出一系列數(shù)學(xué)公式來解決遂铡,計(jì)算機(jī)編程還包括具體的計(jì)算機(jī)編程實(shí)現(xiàn)是如何計(jì)算的,比如計(jì)算上面的多項(xiàng)式的值晶姊,采用第二種算法明顯可以減少計(jì)算次數(shù)以及在內(nèi)存中存放變量需要的空間扒接。
所以,數(shù)學(xué)學(xué)得好人比較很適合計(jì)算機(jī)搞算法也不是沒有道理的,數(shù)學(xué)是計(jì)算機(jī)的靈魂貌似很有道理钾怔,數(shù)值積分值得學(xué)習(xí)<詈簟!蒂教!如果我以后成了個(gè)算法面試官巍举,就考,編寫一個(gè)函數(shù)來計(jì)算多項(xiàng)式的值凝垛,如果靠自己想象出來這樣計(jì)算,小伙子很有設(shè)計(jì)算法的天賦呀蜓谋。