1. 學習這些計算機基礎科目要學習什麼數學
一、數學
數學是計算機專業的基礎,學好數學是學好計算機專業的關鍵。高等數學課程主要學習微積分、空間解析幾何和微分方程,一般高校通用的教材是同濟大學編的《高等數學》,目前已經有了第五版,也可以使用自考教材——西安交通大學陸慶樂編的《高等數學》,可以買一些配套的輔導書和習題解答。
還有兩門重要的數學課程是《線性代數》和《概率統計》。可以分別採用高等教育出版社出版、同濟大學編寫的《線性代數》和浙江大學編寫的《概率統計》。注意:自學一定要多做習題,而且最好一門課有一本習題解答和輔導書。
除了上面數學基礎課外,在計算機專業中舉足輕重的就是《離散數學》,這門課要多花點力氣來學。可以採用左孝凌教授等編的《離散數學》,上海科學技術文獻出版社。也可以用北大、清華的教材,還可以參考左教授編的自學教材,經濟科學出版社。
其他課程還有《復編函數》、《計算方法》等,有餘力的朋友可以選學。
二、專業基礎課
1.《程序設計》:學習內容一般為C和C++。C語言可以採用譚浩強教授的《C程序設計》,內容比較淺顯,C++方面的書推薦錢能編寫的《C++程序設計》,清華大學出版社。
2.《數據結構》:這門課程比較難,可以採用嚴蔚敏教授編寫的《數據結構(C語言版)》,有配套習題冊。好好做題,有時間多編幾個大的程序。
3.《模擬電路》和《數字電路》:這是難度較高的兩門課程,選用自考教材相對來說容易些,也可以參考清華大學出版社出版的相關教材。
三、專業課
1.《計算機組成原理》:推薦白中英主編的《計算機組成原理》(第三版),科學出版社;黃愛英主編的《計算機組成原理》(第三版),清華大學出版社。
2.《操作系統》:湯子贏編寫的《計算機操作系統》(第三版),西安電子科技大學出版社。還可以參考高教司司長張堯學教授編寫的教材,清華大學出版社。
3.《匯編語言》:可以用清華大學出版社出版的教材,也可以用自考教材。
4.《資料庫原理》:人民大學教授王珊編的《資料庫系統概論》(第三版),高等教育出版社,復旦大學施伯樂老師編寫的教材也不錯。
5.《編譯原理》:國防科技大學陳火旺院士編寫的教材十分不錯,最新版本是2000年出的,國防工業出版社。
四、選修課
包括計算機網路與通訊、軟體工程、圖形學、人工智
能、系統結構、圖形學等。此類課程的教材可選用全國高等教育自學考試指定教材,或參考各高校所採用的計算機專科和本科教材及配套輔導書。英文基礎好的朋友可以用國外著名大學的影印版教材。
我也是學計算機專業的,其最核心的課程是數據結構,這門課程想學好不是很容易,要花大量時間去實踐;還有一些重要課程比如:操作系統,C語言,計算機組成原理,匯編語言,資料庫,計算機網路,人工智慧這些都是專業基礎課,還有一些建模課~~~
高中起點計算機本科:
1. 計算機科學與技術專業:C語言程序設計、計算機組成原理、數據結構、操作系統、
微機原理及匯編語言、計算機網路、計算機系統結構、軟體工程、面向對象程序設計等。
2. 計算機軟體專業:面向對象程序設計、計算機組成原理、操作系統、數據結構、計算
機網路、軟體工程、編譯原理、分布式系統、軟體項目管理、Oracle資料庫系統等。
3. 電子商務專業:管理學原理、電子商務、物流管理、計算機網路、供應鏈管理、電子商務平台及核心技術、國際商務管理、電子商務案例分析、商務網站建設等。
專科起點計算機本科:
1. 計算機科學與技術專業:計算機組成原理、數據結構、面向對象程序設計、操作系統、計算機系統結構、軟體工程、資料庫原理及應用、計算機網路、嵌入式系統與結構等。
2. 計算機軟體專業:操作系統、數據結構、面向對象程序設計、計算機原理及系統結構、資料庫系統、JAVA程序設計、計算機網路、軟體工程、中間件技術、信息系統集成等。
3. 電子商務專業:管理學原理、資料庫原理及應用、管理信息系統、金融學、電子商務平台及核心技術、物流管理、計算機網路、人力資源管理、供應鏈管理等。
開設的主要課程有:高等數學、線性代數、概率與數理統計、普通物理、 離散數學、計算機科學導論、C語言及程序設計、匯編語言、、數字電路與邏輯設計、計算機組成原理、演算法與數據結構、操作系統原理、軟體工程、計算機網路與通信、計算機專業英語、編譯原理、資料庫系統原理、面向對象編程技術(如:VB)、CAD技術、圖形圖象處理技術、軟體開發新環境、介面與通訊、人工智慧及應用、信息系統工程、企業會計、電子數據交換(EDI)、計算機維修技術、計算機網路工程、計算機系統維護技術、多媒體技術及其應用、演算法分析與設計、面向對象技術、、計算機圖形學、決策支持系統、網路應用軟體設計、網路操作系統、大型資料庫系統、單片機應用、計算方法、軟體高級工資格認證、高級程
序員水平認證、馬克思主義哲學原理、毛澤東思想概論、馬列政治經濟學原理、鄧小平理論、思想道德修養、法律基礎、大學語文、大學英語、體育等。
《計算機操作系統》課程簡介
本課程是計算機專業的專業課程之一, 著重介紹計算機系統的一個重要系統軟體——操作系統。本課程詳細闡述了操作系統如何管理計算機系統中的軟體和硬體資源、合理組織計算機系統的工作流程、提供用戶與計算機系統之間的軟體介面等機制。
授課內容包括操作系統的基本內容和概念、進程的概念以及通信和調度的方法、操作系統中各種資源的管理。最後通過實例——Linux操作系統,介紹Linux系統中的存儲、設備、文件和進程的管理。
本課程的前導課程為:C語言程序設計。授課對象為:網路與通信專業本科生。
《應用資料庫技術》課程簡介
本課程為本科計算機與通信專業的專業課程。本課程詳細闡述和研究了資料庫系統尤其是關系資料庫系統的基本概念和基本原理、介紹了資料庫國際標准語言——SQL語言以及資料庫設計的基本技術和方法,旨在指導資料庫應用系統的開發和資料庫技術的廣泛應用。
授課內容包括:資料庫的基本原理和數據的物理組織與存取方法;關系資料庫系統的基本概念、關系代數理論、查詢語言、規范化理論、查詢優化;資料庫保護技術;資料庫設計的基本技術和方法以及幾種現今流行的資料庫應用。
本課程的前導課程為:C語言程序設計、數據結構。授課對象為:網路與通信專業本科生。
《數據結構》課程簡介
數據結構是計算機專業課程的主要基礎課程之一。它旨在使學生了解和掌握數據對象的特性,學會數據組織的方法和把現實世界中的問題在計算機內部的表示方法,以及培養基本的、良好的程序設計技能。本課程詳細闡述和研究了各種數據元素之間存在的關系(數據的邏輯結構)、在計算機中如何表示這種關系的存儲結構以及存儲結構的描述方法、數據的不同的邏輯結構在各種存儲結構上實現的基本運算:查找、插入和刪除的演算法,從時間和空間復雜度的角度綜合比較各種存儲結構的不同特點和適用場合。
本課程的基本授課內容包括線性表、棧和隊列、串、數組和廣義表、二叉樹和樹、圖、動態存儲管理、查找、排序和文件等以及實現這些數據組織的演算法等。
2. 如果要把計算機學到很牛要掌握那些數學知識
數學在計算機圖形學中的應用 Greg Turk, August 1997 「學習計算機圖形學需要多少的數學?」這 是初學者最經常問的問題。答案取決於你想在計算機圖形學領域鑽研多深。如果僅僅使用周圍唾手可得的圖形軟體,你不需要知道多少數學知識。如果想學習計算機 圖形學的入門知識,我建議你讀一讀下面所寫的前兩章(代數,三角學和線性代數)。如果想成為一名圖形學的研究者,那麼對數學的學習將是活到老,學到老。如 果你並不特別喜歡數學,是否仍有在計算機圖形學領域工作的機會?是的,計算機圖形學的確有一些方面不需要考慮太多的數學問題。你不應該因為數學成績不好而 放棄它。不過,如果學習了更多的數學知識,似乎你將在研究課題上有更多的選擇餘地。對於在計算機圖形學中哪些數學才是重要的還沒有明確的答案。這領域里不 同的方面要求掌握不同的數學知識,也許興趣將會決定了你的方向。以下介紹我認為對於計算機圖形學有用的數學。別以為想成為一名圖形學的研究者就必須精通各 門數學!為了對用於圖形學的數學有一個全面的看法,我特地列出了很多方面。但是許多研究者從不需要考慮下面提到的數學。最後,雖然讀了這篇文章後,你應該 會對數學在計算機圖形學中的應用有所了解,不過這些觀點完全是我自己的。也許你應該閱讀更多的此類文章,或者至少從其他從事計算機圖形學工作的人那裡了解 不同的學習重點。現在開始切入正題。代數和三角學對於計算機圖形學的初學者來說,高中的代數和三角學可能是最重要的數學。日復一日,我從簡單的方程解出一 個或更多的根。我時常還要解決類似求一些幾何圖形邊長的簡單三角學問題。代數和三角學是計算機圖形學的最基礎的知識。那麼高中的幾何學怎麼樣呢?可能讓人 驚訝,不過在多數計算機圖形學里,高中的幾何學並不經常被用到。原因是許多學校教的幾何學實際上是如何建立數學證明的課程。雖然證明題對提高智力顯然是有 效的,但對於計算機圖形學來說,那些與幾何課有關的定理和證明並不常被用到。如果你畢業於數學相關領域(包括計算機圖形學),就會發現雖然你在證明定理, 不過這對開始學習圖形學不是必要的。如果精通代數和三角學,就可以開始讀一本計算機圖形學的入門書了。下一個重要的用於計算機圖形學的數學——線性代數,多數此類書籍至少包含了一個對線性代數的簡要介紹。推薦的參考書: Computer Graphics: Principles and Practice James Foley, Andries van Dam, Steven Feiner, John Hughes Addison-Wesley [雖然厚重,可是我很喜歡] 線性代數線性代數的思想貫穿於計算機圖形學。事實上,只要牽涉到幾何數值表示法,就常常抽象出例如x,y,z坐 標之類的數值,我們稱之為矢量。圖形學自始至終離不開矢量和矩陣。用矢量和矩陣來描述旋轉,平移,或者縮放是再好不過了。高中和大學都有線性代數的課程。 只要想在計算機圖形學領域工作,就應該打下堅實的線性代數基礎。我剛才提到,許多圖形學的書都有關於線性代數的簡要介紹——足夠教給你圖形學的第一門課。推薦的參考書: Linear Algebra and Its Applications Gilbert Strang Academic Press 微積分學 微 積分學是高級計算機圖形學的重要成分。如果打算研究圖形學,我強烈建議你應該對微積分學有初步認識。理由不僅僅是微積分學是一種很有用的工具,還有許多研 究者用微積分學的術語來描述他們的問題和解決辦法。另外,在許多重要的數學領域,微積分學被作為進一步學習的前提。學習了基本代數之後,微積分學又是一種 能為你打開多數計算機圖形學與後繼的數學學習之門的課程。微積分學是我介紹的最後一個中學課程,以下提及的科目幾乎全部是大學的課程。 微分幾何學微分幾何學研究支配光滑曲線,曲面的方程組。如果你要計算出經過某個遠離曲面的點並垂直於曲面的矢量(法向矢量)就會用到微分幾何學。讓一輛汽車以特定速度在曲線上行駛也牽涉到微分幾何學。有一種通用的繪制光滑曲面的圖形學技術,叫做「凹凸帖圖」,這個技術用到了微分幾何學。如果要著手於用曲線和曲面來創造形體(在圖形學里稱之為建模)你至少應該學習微分幾何學的基礎。推薦的參考書: Elementary Differential Geometry Barrett O'Neill Academic Press 數值方法幾乎任何時候,我們在計算機里用近似值代替精確值來表示和操作數值,所以計算過程總是會有誤差。而且對於給定的數值問題,常常有多種解決的方法,一些方法會更塊,更精確或者對內存的需求更少。數值方法研究的對象包括「計算方法」和「科學計算」等等。這是一個很廣闊的領域,而且我將提及的其他幾門數學其實是數值方法的一些分支。這些分支包括抽樣法理論,矩陣方程組,數值微分方程組和最優化。推薦的參考書: Numerical Recipes in C: The Art of Scientific Computing William Press, Saul Teukolsky, William Vetterling and Brian Flannery Cambridge University Press [這本參考書很有價值可是很少作為教材使用] 抽 樣法理論和信號處理在計算機圖形學里我們反復使用儲存在正規二維數組里的數字集合來表示一些對象,例如圖片和曲面。這時,我們就要用抽樣法來表示這些對 象。如果要控制這些對象的品質,抽樣法理論就變得尤為重要。抽樣法應用於圖形學的常見例子是當物體被繪制在屏幕上時,它的輪廓呈現鋸齒狀的邊緣。這鋸齒狀 的邊緣(被認為是「混淆」現象)是非常讓人分散注意力的,用抽樣法中著名的技術例如迴旋,傅立葉變換,空間和頻率的函數表示就能把這個現象減少到最小。這些思想在圖像和音頻處理領域是同樣重要的。推薦的參考書: The Fourier Transform and Its Applications Ronald N. Bracewell McGraw Hill 矩 陣方程組計算機圖形學的許多問題要用到矩陣方程組的數值解法。一些涉及矩陣的問題包括:找出最好的位置與方向以使對象們互相匹配(最小二乘法),創建一個 覆蓋所給點集的曲面,並使皺折程度最小(薄板樣條演算法),還有材質模擬,例如水和衣服等。在圖形學里矩陣表述相當流行,因此在用於圖形學的數學中我對矩陣 方程組的評價是很高的。推薦的參考書: Matrix Computations Gene Golub and Charles Van Loan Johns Hopkins University Press 物 理學物理學顯然不是數學的分支,它是自成一家的學科。但是在計算機圖形學的某些領域,物理學和數學是緊密聯系的。在圖形學里,牽涉物理學的問題包括光與物 體的表面是怎樣互相影響的,人與動物的移動方式,水與空氣的流動。為了模擬這些自然現象,物理學的知識是必不可少的。這和解微分方程緊密聯系,我將會在下 一節提到微分方程。 微 分方程的數值解法我相信對於計算機圖形學來說,解微分方程的技巧是非常重要的。像我們剛才討論的,計算機圖形學致力於模擬源於真實世界的物理系統。波浪是 怎樣在水裡形成的,動物是怎樣在地面上行走的,這就是兩個模擬物理系統的例子。模擬物理系統的問題經常就是怎樣解微分方程的數值解。請注意,微分方程的數 值解法與微分方程的符號解法是有很大差異的。符號解法求出沒有誤差的解,而且時常只用於一些非常簡單的方程。有時大學課程里的「微分方程」只 教符號解法,不過這並不會對多數計算機圖形學的問題有幫助。在對物理系統的模擬中,我們把世界細分為許多表示成矢量的小元素。然後這些元素之間的關系就可 以用矩陣來描述。雖然要處理的矩陣方程組往往沒有很精確的解,但是取而代之的是執行了一系列的計算,這些計算產生一個表示成數列的近似解。這就是微分方程 的數值解法。請注意,矩陣方程的解法與微分方程數值解法的關系是很密切的。 最優化在計算機圖形學里,我們常常為了期望的目標尋求一種合適的描述對象或者對象集的方法。例如安排燈的位置使得房間的照明看起來有種特殊的「感覺」,動畫里的人物要怎樣活動四肢才能實現一個特殊的動作,怎樣排版才不會使頁面混亂。以上這些例子可以歸結為最優化問題。十年前的計算機圖形學幾乎沒有最優化技術的文獻,不過最近這個領域越來越重視最優化理論。我認為在計算機圖形學里,最優化的重要性將會日益增加。 概率論與統計學計算機圖形學的許多領域都要用到概率論與統計學。當研究者涉足人類學科時,他們當然需要統計學來分析數據。圖形學相關領域涉及人類學科,例如虛擬現實和人機交互(HCI)。另外,許多用計算機描繪真實世界的問題牽涉到各種未知事件的概率。兩個例子:一棵成長期的樹,它的樹枝分杈的概率;虛擬的動物如何決定它的行走路線。最後,一些解高難度方程組的技巧用了隨機數來估計方程組的解。重要的例子:蒙特卡羅方法經常用於光如何傳播的問題。以上僅是一部分在計算機圖形學里使用概率論和統計學的方法。 計算幾何學計算幾何學研究如何用計算機高效地表示與操作幾何體。典型問題如,碰撞檢測,把多邊形分解為三角形,找出最靠近某個位置的點,這個學科包括了運演算法則,數據結構和數學。圖形學的研究者,只要涉足創建形體(建模),就要大量用到計算幾何學。推薦的參考書: Computational Geometry in C Joseph O'Rourke Cambridge University Press [大學教材] Computational Geometry: An Introction Franco Preparata and Michael Shamos Springer-Verlag [很經典,不過有點舊了] 總 結:數學應用和數學理論對於圖形學來說,以上提到的許多數學學科都有個共同點:比起這些數學的理論價值,我們更傾向於發掘它們的應用價值。不要驚訝。圖形 學的許多問題和物理學者與工程師們研究的問題是緊密聯系的,並且物理學者與工程師們使用的數學工具正是圖形學研究者們使用的。多數研究純數學理論的學科從 不被用於計算機圖形學。不過這不是絕對的。請注意這些特例:分子生物學正利用節理論來研究DNA分 子動力學,亞原子物理學用到了抽象群論。也許有一天,純數學理論也能推動計算機圖形學的發展,誰知道呢?有些看來重要的數學實際上在計算機圖形學里不常被 用到。可能拓撲學是此類數學中最有意思的。用一句話來形容拓撲學,它研究油炸圈餅與咖啡杯為什麼在本質上是相同的。答案是他們都是只有一個洞的曲面。我們 來討論一下拓撲學的思想。雖然曲面是計算機圖形學的重要成分,不過微分幾何學的課程已經涵蓋了多數對圖形學有用的拓撲學知識。微分幾何學研究曲面的造型, 可是拓撲學研究曲面的相鄰關系。我覺得拓撲學對於圖形學來說幾乎沒用,這是由於拓撲學關心抽象的事物,而且拓撲學遠離了多數圖形學的核心——三維歐氏空間的概念。對於圖形學來說,拓撲學的形式(符號表示法)是表達思想的簡便方法,不過圖形學很少用到抽象拓撲學的實際工具。對圖形學來說,拓撲學像一個好看的花瓶,不過別指望它能立即帶給你回報。有人曾經這么問我,計算機圖形學是否用到了抽象代數(群論,環,等等….)或者數論。我沒怎麼遇到過。和拓撲學一樣,這些學科有很多美好的思想。可是很不幸,這些思想很少用於計算機圖形學。