資料結構演算法離散數學C人工智慧圖形學

2021-05-13 05:06:45 字數 1322 閱讀 8327

1樓:

數學,是核心。

演算法,是數學的具體表現。或者說,是數學的一個外殼。這個外殼,有簡單的,有複雜的。

就象加法運算,幼兒園、小學、中學、大學都要學。但加法用的場合不同,解決問題的範圍也就不同。

幼兒園,加法用於正整數計算。

小學,加法用於實數計算。

中學,加法用於簡單的向量計算。

大學,加法用於多維度的複雜向量計算。

同樣的道理,《零基礎學演算法》、《零基礎資料結構》和《大話資料結構》,與《演算法導論》雖然都是講解演算法的,但難易程度不是一個概念。

在解決實際問題時,首先需要把具體問題用數學語言描述出來。如果前人已經解決了,直接使用他們的結論。如果沒有,就得自己去求解。

其次,用演算法把數學結論描述成計算機能夠理解的工作步驟。此時,計算機就是一個大一點的計算器。

最後,讓計算機執行程式,並得到實際問題的結果。

因此,你的數學能力有多強,就能解決多複雜的問題。

建議你去看看《程式設計師的10層樓》一文。到了後期,基本上都是數學、哲學的範疇。

另外,在科學界,沒有微軟公司的一席之地。所以,他們對數學的要求也是較低的。

2樓:

從你雜亂無章的敘述來看,你要先補習很多的數學知識。在你明白「有多少個互不相同的n個節點的二叉樹」這個演算法的求解過程之前,你離《計算機程式設計藝術》還差很遠。

學演算法,數學知識不一定立馬能用上,但是清晰的條理和邏輯結構是學習和研究演算法所必須的,學數學就像給大腦做體操,鍛鍊抽象思維,大腦強大了,演算法思想自然就水到渠成。

3樓:月影低徊

演算法導論不需要數學基礎,有你這些基礎已經夠了

4樓:匿名使用者

可能你在程式設計中並不感覺到數學多重要,我覺得數學最重要的是培養了一種思維模式,他在潛移默化的影響著你的演算法,數學好的人程式一般都較嚴謹,簡潔。所以,你還是系統的學一下較好,那麼多數學門類,起碼要精通一門,不要東戳一下,西搞一通。

5樓:匿名使用者

呵呵,數學很重要啊,高中時不知道很正常,因為你還沒學到可以應用的程度,相信我,數學不會白學,你發的這個方面太廣,c和數學結構是基礎,我給你舉個例子吧:1,圖形學自然要用到線性代數上面的矩陣。2,高等數學上有傅立葉變換,在數字影象處理方面有用處。

3,離散數學圖論在工程方面有用處,在編譯器的設計上也有用處,有人工智慧上有用處。4,演算法的幾大類從分治到np問題,基本都很固定,目的只是讓你有一個分析問題和處理問題的思想。再說你不可能一輩子當一個程式設計師吧,所以說演算法能用即可, 不必要精,當然精更好。

計算機專業資料結構的教授演算法設計也不一定精。在國內做到能夠應用的程度即可。

資料結構要先學《離散數學》嗎,學資料結構之前必須學離散數學嗎?

我相信當你把這兩門功課都學完後,會發覺最好的方式是先學 離散數序 再學 資料結構 當然你硬要先學 資料結構 也是可以的。沒有太大的影響。計算機組成原理 應當在 彙編 之前學合適。資料結構的學習,與離散數學的學習,並沒什麼必然聯絡。離散數學,只是讓你的思維邏輯,在學資料結構式,更容易理解罷了,呵呵 我...

沒學過c語言可以學c語言資料結構與演算法嗎

你好一點小建bai議希望能du 對你有幫助 1 學演算法 學習演算法和zhi具體的語言還是dao 有一內定的聯絡,比如說你的容演算法最後要用c語言來實現,因為c是程序導向的,所以這和用物件導向的語言如c 來實現可能考慮的思路是有點區別的,但是你要說有絕對的關係也不一定,因為演算法他是一種思想,一種解...

C 資料結構與演算法,不一樣的fibonacc(斐波那契)數列

a,b定下來之後,f n 其實只和f n 1 和f n 2 相關了,而這裡又對2013取模,那麼f n 的範圍為0 2012,而f n 1 和f n 2 的組合有2013 2013種,比如123,234,那麼只需要找到這樣的迴圈節即可,比如f n 最終為 34,35,65,78,45,34,35 之...