當前位置:首頁 » 發表方式 » 機械工業出版社圖論

機械工業出版社圖論

發布時間: 2021-03-09 13:41:01

A. 北京師范大學張秀平老師講的圖論教程是哪本書啊

用的是機械工業出版社的那一本。該書分為兩部分:組合數學、圖論。沒什麼可學的,都是小學奧數的內容。

B. 跪求圖論導引第二版教材課後習題答案或者相關資料!

有電子書教程,但沒答案!

C. 七色定理的七色定理

起源,人類在企圖證明四色定理過程中,發現了在曲面上作圖,反而更加容易。1974年德國的林格和美國的楊斯證明了:(公式來自《圖論導引》214頁,機械工業出版社)
P是指這個曲面的洞的個數,又叫虧格。當虧格為1時

外國數學家並且給出了這個需要7種顏色染色的圖形:(參見右圖)上下對折,再左右對折,形成一個汽車輪胎形狀,就是有7個區域兩兩相連。
表明:在有一個洞的曲面上染色,6種顏色是不夠的。如果能夠將一個圖G畫在平面上,使得他的邊僅僅在端點相交,則稱這個圖是可以嵌入平面的,或者稱其為平面圖。

D. 在計算機網路組網方法和應用模式上,無線區域網與有線區域網有哪些差別

計算機科學與技術這一門科學深深的吸引著我們這些同學們,上計算機系已經有近三年了,自己也做了一些思考,我一直認為計算機科學與技術這門專業,在本科階段是不可能切分成計算機科學和計算機技術的,因為計算機科學需要相當多的實踐,而實踐需要技術;每一個人(包括非計算機專業),掌握簡單的計算機技術都很容易(包括程序設計),但計算機專業的優勢就在於,我們掌握許多其他專業並不"深究"的東西,例如,演算法,體系結構,等等。非計算機專業的人可以很容易地做一個晶元,寫一段程序,但他們做不出計算機專業能夠做出來的大型系統。今天我想專門談一談計算機科學,並將重點放在計算理論上。

計算機理論的一個核心問題——從數學談起:
記得當年大一入學,每周六課時高等數學,天天作業不斷(那時是六日工作制)。頗有些同學驚呼走錯了門:咱們這到底念的是什麼系?不錯,你沒走錯門,這就是計算機科學與技術系。我國計算機科學系裡的傳統是培養做學術研究,尤其是理論研究的人(方向不見得有問題,但是做得不是那麼盡如人意)。而計算機的理論研究,說到底了,如網路安全,圖形圖像學,視頻音頻處理,哪個方向都與數學有著很大的關系,雖然也許是正統數學家眼裡非主流的數學。這里我還想闡明我的一個觀點:我們都知道,數學是從實際生活當中抽象出來的理論,人們之所以要將實際抽象成理論,目的就在於想用抽象出來的理論去更好的指導實踐,有些數學研究工作者喜歡用一些現存的理論知識去推導若干條推論,殊不知其一:問題考慮不全很可能是個錯誤的推論,其二:他的推論在現實生活中找不到原型,不能指導實踐。嚴格的說,我並不是一個理想主義者,政治課上學的理論聯系實際一直是指導我學習科學文化知識的航標(至少我認為搞計算機科學與技術的應當本著這個方向)。

其實我們計算機系學數學光學高等數學是不夠的(典型的工科院校一般都開的是高等數學),我們應該像數學系一樣學一下數學分析(清華計算機系開的好像就是數學分析),數學分析這門科學,咱們學計算機的人對它有很復雜的感情。在於它是偏向於證明型的數學課程,這對我們培養良好的分析能力極有幫助。我的軟體工程學導師北工大數理學院的王儀華先生就曾經教導過我們,數學系的學生到軟體企業中大多作軟體設計與分析工作,而計算機系的學生做程序員的居多,原因就在於數學系的學生分析推理能力,從所受訓練的角度上要遠遠在我們之上。當年出現的怪現象是:計算機系學生的高中數學基礎在全校數一數二(希望沒有冒犯其它系的同學),教學課時數也僅次於數學系,但學完之後的效果卻不盡如人意。難道都是學生不努力嗎,我看未見得,方向錯了也說不一定,其中原因何在,發人深思。

我個人的淺見是:計算機系的學生,對數學的要求固然跟數學系不同,跟物理類差別則更大。通常非數學專業的所謂"高等數學",無非是把數學分析中較困難的理論部分刪去,強調套用公式計算而已。而對計算機系來說,數學分析里用處最大的恰恰是被刪去的理論部分。說得難聽一點,對計算機系學生而言,追求算來算去的所謂"工程數學"已經徹底地走進了誤區。記上一堆曲面積分的公式,難道就能算懂了數學?那倒不如現用現查,何必費事記呢?再不然直接用Mathematics或是Matalab好了。
我在系裡最愛做的事情就是給學弟學妹們推薦參考書。中文的數學分析書,一般都認為以北大張築生老師的"數學分析新講"為最好。萬一你的數學實在太好,那就去看菲赫金哥爾茨的"微積分學教程"好了--但我認為沒什麼必要,畢竟你不想轉到數學系去。吉米多維奇的"數學分析習題集"也基本上是計算型的東東。書的名氣很大,倒不見得適合我們,還是那句話,重要的是數學思想的建立,生活在信息社會里我們求的是高效,計算這玩意還是留給計算機吧。不過現在多用的似乎是復旦大學的《數學分析》也是很好的教材。

中國的所謂高等代數,就等於線性代數加上一點多項式理論。我以為這有好的一面,因為可以讓學生較早感覺到代數是一種結構,而非一堆矩陣翻來覆去。這里不得不提南京大學林成森,盛松柏兩位老師編的"高等代數",感覺相當舒服。此書相當全面地包含了關於多項式和線性代數的基本初等結果,同時還提供了一些有用的又比較深刻的內容,如Sturm序列,Shermon-Morrison公式,廣義逆矩陣等等。可以說,作為本科生如能吃透此書,就可以算高手。國內較好的高等代數教材還有清華計算機系用的那本,清華出版社出版,書店裡多多,一看就知道。從抽象代數的觀點來看,高等代數里的結果不過是代數系統性質的一些例子而已。莫宗堅先生的《代數學》里,對此進行了深刻的討論。然而莫先生的書實在深得很,作為本科生恐怕難以接受,不妨等到自己以後成熟了一些再讀。

正如上面所論述的,計算機系的學生學習高等數學:知其然更要知其所以然。你學習的目的應該是:將抽象的理論再應用於實踐,不但要掌握題目的解題方法,更要掌握解題思想,對於定理的學習:不是簡單的應用,而是掌握證明過程即掌握定理的由來,訓練自己的推理能力。只有這樣才達到了學習這門科學的目的,同時也縮小了我們與數學系的同學之間思維上的差距。

概率論與數理統計這門課很重要,可惜大多數院校講授這門課都會少些東西。少了的東西現在看至少有隨機過程。到畢業還沒有聽說過Markov過程,此乃計算機系學生的恥辱。沒有隨機過程,你怎麼分析網路和分布式系統?怎麼設計隨機化演算法和協議?據說清華計算機系開有"隨機數學",早就是必修課。另外,離散概率論對計算機系學生來說有特殊的重要性。而我們國家工程數學講的都是連續概率。現在,美國已經有些學校開設了單純的"離散概率論"課程,乾脆把連續概率刪去,把離散概率講深些。我們不一定要這么做,但應該更加強調離散概率是沒有疑問的。這個工作我看還是盡早的做為好。

計算方法學(有些學校也稱為數學分析學)是最後一門由數理學院給我們開的課。一般學生對這門課的重視程度有限,以為沒什麼用。不就是照套公式嘛!其實,做圖形圖像可離不開它,密碼學搞深了也離不開它。而且,在很多科學工程中的應用計算,都以數值的為主。這門課有兩個極端的講法:一個是古典的"數值分析",完全講數學原理和演算法;另一個是現在日趨流行的"科學與工程計算",乾脆教學生用軟體包編程。我個人認為,計算機系的學生一定要認識清楚我們計算機系的學生為什麼要學這門課,我是很偏向於學好理論後用計算機實現的,最好使用C語言或C++編程實現。向這個方向努力的書籍還是挺多的,這里推薦大家高等教育出版社(CHEP)和施普林格出版社(Springer)聯合出版的《計算方法(Computational Methods)》,華中理工大學數學系寫的(現華中科技大學),這方面華科大做的工作在國內應算是比較多的,而個人認為以這本最好,至少程序設計方面涉及了:任意數學函數的求值,方程求根,線性方程組求解,插值方法,數值積分,場微分方程數值求解。李慶揚的那本則理論性過強,與實際應用結合得不太緊。

每個學校本系裡都會開一門離散數學,涉及集合論,圖論,和抽象代數,數理邏輯。不過,這么多內容擠在離散數學一門課里,是否時間太緊了點?另外,計算機系學生不懂組合和數論,也是巨大的缺陷。要做理論,不懂組合或者數論吃虧可就太大了。從理想的狀態來看,最好分開六門課:集合,邏輯,圖論,組合,代數,數論。這個當然不現實,因為沒那麼多課時。也許將來可以開三門課:集合與邏輯,圖論與組合,代數與數論。(這方面我們學校已經著手開始做了)不管課怎麼開,學生總一樣要學。下面分別談談上面的三組內容。
古典集合論,北師大出過一本《基礎集合論》不錯。 數理邏輯,中科院軟體所陸鍾萬教授的《面向計算機科學的數理邏輯》就不錯。現在可以找到陸鍾萬教授的講課錄像,http://www.cas.ac.cn/html/Dir/2001/11/06/3391.htm自己去看看吧。總的來說,學集合/邏輯起手不難,普通高中生都能看懂。但越往後越感覺深不可測。

學完以上各書之後,如果你還有精力興趣進一步深究,那麼可以試一下GTM系列中的《Introction to Axiomatic Set Theory》和《A Course of Mathematical Logic》。這兩本都有世界圖書出版社的引進版。你如果能搞定這兩本,可以說在邏輯方面真正入了門,也就不用再浪費時間聽我瞎侃了。

據說全中國最多隻有三十個人懂圖論。此言不虛。圖論這東東,技巧性太強,幾乎每個問題都有一個獨特的方法,讓人頭痛。不過這也正是它魅力所在:只要你有創造性,它就能給你成就感。我的導師說,圖論裡面隨便揪一塊東西就可以寫篇論文。大家可以體會裡面內容之深廣了吧!國內的圖論書中,王樹禾老師的"圖論及其演算法"非常成功。一方面,其內容在國內教材里算非常全面的。另一方面,其對演算法的強調非常適合計算機系(本來就是科大計算機系教材)。有了這本書為主,再參考幾本翻譯的,如Bondy & Murty的《圖論及其應用》,人民郵電出版社翻譯的《圖論和電路網路》等等,就馬馬虎虎,對本科生足夠了。再進一步,世界圖書引進有GTM系列的"Modern Graph Theory"。此書確實經典!國內好象還有一家出版了個翻譯版。不過,學到這個層次,還是讀原版好。搞定這本書,也標志著圖論入了門。

離散數學方面我們北京工業大學實驗學院有個世界級的專家,叫邵學才,復旦大學概率論畢業的,教過高等數學,線性代數,概率論,最後轉向離散數學,出版著作無數,論文集新加坡有一本,堪稱經典,大家想學離散數學的真諦不妨找來看看。這老師的課我專門去聽過,極為經典。不過你要從他的不經意的話中去挖掘精髓。在同他的交談當中我又深刻地發現一個問題,雖說邵先生寫書無數,但依他自己的說法每本都差不多,我實在覺得詫異,他說主要是有大綱的限制,不便多寫。這就難怪了,很少聽說國外寫書還要依據個什麼大綱(就算有,內容也寬泛的多),不敢越雷池半步,這樣不是看誰的都一樣了。外版的書好就好在這里,最新的科技成果裡面都有論述,別的先不說,至少是"緊跟時代的理論知識"。

組合感覺沒有太適合的國產書。還是讀Graham和Knuth等人合著的經典"具體數學"吧,西安電子科技大學出版社有翻譯版。 抽象代數,國內經典為莫宗堅先生的"代數學"。此書是北大數學系教材,深得好評。然而對本科生來說,此書未免太深。可以先學習一些其它的教材,然後再回頭來看"代數學"。國際上的經典可就多了,GTM系列裡就有一大堆。推薦一本談不上經典,但卻最簡
單的,最容易學的:http://www.math.miami.e/~ec/book/這本"Introction to Linear and Abstract Algebra"非常通俗易懂,而且把抽象代數和線性代數結合起來,對初學者來說非常理想,我校比較牛的同學都有收藏。

數論方面,國內有經典而且以困難著稱的"初等數論"(潘氏兄弟著,北大版)。再追溯一點,還有更加經典(可以算世界級)並且更加困難的"數論導引"(華羅庚先生的名著,科學版,九章書店重印,繁體的看起來可能比較困難)。把基礎的幾章搞定一個大概,對本科生來講足夠了。但這只是初等數論。本科畢業後要學計算數論,你必須看英文的書,如Bach的"Introction to Algorithmic Number Theory"。
計算機科學理論的根本,在於演算法。現在很多系裡給本科生開設演算法設計與分析,確實非常正確。環顧西方世界,大約沒有一個三流以上計算機系不把演算法作為必修的。演算法教材目前公認以Corman等著的"Introction to Algorithms"為最優。對入門而言,這一本已經足夠,不需要再參考其它書。

再說說形式語言與自動機。我看過北郵的教材,應該說寫的還清楚。但是,有一點要強調:形式語言和自動機的作用主要在作為計算模型,而不是用來做編譯。事實上,編譯前端已經是死領域,沒有任何open problems,北科大的班曉娟博士也曾經說過,編譯的技術已相當成熟。如果為了這個,我們完全沒必要去學形式語言--用用yacc什麼的就完了。北郵的那本在國內還算比較好,但是在深度上,在跟可計算性的聯繫上都有較大的局限,現代感也不足。所以建議有興趣的同學去讀英文書,不過國內似乎沒引進這方面的教材。可以去互動出版網上看一看。入門以後,把形式語言與自動機中定義的模型,和數理邏輯中用遞歸函數定義的模型比較一番,可以說非常有趣。現在才知道,什麼叫"宮室之美,百官之富"!

計算機科學和數學的關系有點奇怪。二三十年以前,計算機科學基本上還是數學的一個分支。而現在,計算機科學擁有廣泛的研究領域和眾多的研究人員,在很多方面反過來推動數學發展,從某種意義上可以說是孩子長得比媽媽還高了。但不管怎麼樣,這個孩子身上始終流著母親的血液。這血液是the mathematical underpinning of computer science(計算機科學的數學基礎),也就是理論計算機科學。原來在東方大學城圖書館中曾經看過一本七十年代的譯本(書皮都沒了,可我就愛關注這種書),大概就叫《計算機數學》。那本書若是放在當時來講決是一本好書,但現在看來,涵蓋的范圍還算廣,深度則差了許多,不過推薦大一的學生倒可以看一看,至少可以使你的計算數學入入門。

最常和理論計算機科學放在一起的一個詞是什麼?答:離散數學。這兩者的關系是如此密切,以至於它們在不少場合下成為同義詞。(這一點在前面的那本書中也有體現)傳統上,數學是以分析為中心的。數學系的同學要學習三四個學期的數學分析,然後是復變函數,實變函數,泛函數等等。實變和泛函被很多人認為是現代數學的入門。在物理,化學,工程上應用的,也以分析為主。

隨著計算機科學的出現,一些以前不太受到重視的數學分支突然重要起來。人們發現,這些分支處理的數學對象與傳統的分析有明顯的區別:分析研究的問題解決方案是連續的,因而微分,積分成為基本的運算;而這些分支研究的對象是離散的,因而很少有機會進行此類的計算。人們從而稱這些分支為"離散數學"。"離散數學"的名字越來越響亮,最後導致以分析為中心的傳統數學分支被相對稱為"連續數學"。

離散數學經過幾十年發展,基本上穩定下來。一般認為,離散數學包含以下學科:
1) 集合論,數理邏輯與元數學。這是整個數學的基礎,也是計算機科學的基礎。
2) 圖論,演算法圖論;組合數學,組合演算法。計算機科學,尤其是理論計算機科學的核心是
演算法,而大量的演算法建立在圖和組合的基礎上。
3) 抽象代數。代數是無所不在的,本來在數學中就非常重要。在計算機科學中,人們驚訝地發現代數竟然有如此之多的應用。

但是,理論計算機科學僅僅就是在數學的上面加上"離散"的帽子這么簡單嗎?一直到大約十幾年前,終於有一位大師告訴我們:不是。D.E.Knuth(他有多偉大,我想不用我廢話了)在Stanford開設了一門全新的課程Concrete Mathematics。 Concrete這個詞在這里有兩層含義:
首先:對abstract而言。Knuth認為,傳統數學研究的對象過於抽象,導致對具體的問題關心不夠。他抱怨說,在研究中他需要的數學往往並不存在,所以他只能自己去創造一些數學。為了直接面向應用的需要,他要提倡"具體"的數學。在這里我做一點簡單的解釋。例如在集合論中,數學家關心的都是最根本的問題--公理系統的各種性質之類。而一些具體集合的性質,各種常見集合,關系,映射都是什麼樣的,數學家覺得並不重要。然而,在計算機科學中應用的,恰恰就是這些具體的東西。Knuth能夠首先看到這一點,不愧為當世計算機第一人。其次,Concrete是Continuous(連續)加上discrete(離散)。不管連續數學還是離散數學,都是有用的數學!

理論與實際的結合——計算機科學研究的范疇
前面主要是從數學角度來看的。從計算機角度來看,理論計算機科學目前主要的研究領域包括:可計算性理論,演算法設計與復雜性分析,密碼學與信息安全,分布式計算理論,並行計算理論,網路理論,生物信息計算,計算幾何學,程序語言理論等等。這些領域互相交叉,而且新的課題在不斷提出,所以很難理出一個頭緒來。想搞搞這方面的工作,推薦看中國計算機學會的一系列書籍,至少代表了我國的權威。下面隨便舉一些例子。
由於應用需求的推動,密碼學現在成為研究的熱點。密碼學建立在數論(尤其是計算數論),代數,資訊理論,概率論和隨機過程的基礎上,有時也用到圖論和組合學等。很多人以為密碼學就是加密解密,而加密就是用一個函數把數據打亂。這樣的理解太淺顯了。
現代密碼學至少包含以下層次的內容:
第一,密碼學的基礎。例如,分解一個大數真的很困難嗎?能否有一般的工具證明協議正確?
第二,密碼學的基本課題。例如,比以前更好的單向函數,簽名協議等。
第三,密碼學的高級問題。例如,零知識證明的長度,秘密分享的方法。
第四,密碼學的新應用。例如,數字現金,叛徒追蹤等。
在分布式系統中,也有很多重要的理論問題。例如,進程之間的同步,互斥協議。一個經典的結果是:在通信信道不可靠時,沒有確定型演算法能實現進程間協同。所以,改進TCP三次握手幾乎沒有意義。例如時序問題。常用的一種序是因果序,但因果序直到不久前才有一個理論上的結果....例如,死鎖沒有實用的方法能完美地對付。例如,......操作系統研究過就自己去舉吧!
如果計算機只有理論,那麼它不過是數學的一個分支,而不成為一門獨立的科學。事實上,在理論之外,計算機科學還有更廣闊的天空。

我一直認為,4年根本不夠學習計算機的基礎知識,因為面太寬了......
這方面我想先說說我們系在各校普遍開設的《計算機基礎》。在高等學校開設《計算機基礎課程》是我國高教司明文規定的各專業必修課程要求。主要內容是使學生初步掌握計算機的發展歷史,學會簡單的使用操作系統,文字處理,表格處理功能和初步的網路應用功能。但是在計算機科學系教授此門課程的目標決不能與此一致。在計算機系課程中目標應是:讓學生較為全面的了解計算機學科的發展,清晰的把握計算機學科研究的方向,發展的前沿即每一個課程在整個學科體系中所處的地位。搞清各學科的學習目的,學習內容,應用領域。使學生在學科學習初期就對整個學科有一個整體的認識,以做到在今後的學習中清楚要學什麼,怎麼學。計算機基本應用技能的位置應當放在第二位或更靠後,因為這一點對於本系的學生應當有這個摸索能力。這一點很重要。推薦給大家一本書:機械工業出版社的《計算機文化》(New Perspective of Computer Science),看了這本書我才深刻的體會到自己還是個計算機科學初學者,才比較透徹的了解了什麼是計算機科學。另外在廈門大學趙致琢老師的著作《計算科學導論》當中的很多經典理論都是在同類書籍中很難找到的。看看他也許你才會明白一個最基本的問題:為什麼計算機科學叫計算科學更為准確。這本書在世界上也可成為精品級的著作。

一個一流計算機系的優秀學生決不該僅僅是一個編程高手,但他一定首先是一個編程高手。我上大學的時候,第一門專業課是C語言程序設計,念計算機的人從某種角度講相當一部分人是靠寫程序吃飯的。在我們北京工業大學實驗學院計算機系裡一直有這樣的爭論(時至今日CSDN上也有),關於第一程序設計語言該用哪一種。我個人認為,用哪種語言屬於末節,關鍵在養成良好的編程習慣。當年老師對我們說,打好基礎後學一門新語言只要一個星期。現在我覺得根本不用一個星期,前提是先把基礎打好。不要再猶豫了,學了再說,等你抉擇好了,別人已經會了幾門語言了。

匯編語言和微機原理是兩門特煩人的課。你的數學/理論基礎再好,也占不到什麼便宜。這兩門課之間的次序也好比先有雞還是先有蛋,無論你先學哪門,都會牽扯另一門課里的東西。所以,只能靜下來慢慢琢磨。這就是典型的工程課,不需要太多的聰明和頓悟,卻需要水滴石穿的漸悟。有關這兩門課的書,計算機書店裡不難找到。弄幾本最新的,對照著看吧。組成原理推薦《計算機組成與結構》清華大學王愛英教授寫的。匯編語言大家拿8086/8088入個門,之後一定要學80x86匯編語言。實用價值大,不落後,結構又好,寫寫高效病毒,高級語言里嵌一點匯編,進行底層開發,總也離不開他,推薦清華大學沈美明的《IBM—PC匯編語言程序設計》。有些人說不想了解計算機體系結構,也不想製造計算機,所以諸如計算機原理,匯編語言,介面之類的課覺得沒必要學,這樣合理嗎?顯然不合理,這些東西遲早得掌握,肯定得接觸,而且,這是計算機專業與其他專業學生相比的少有的幾項優勢。做項目的時候,了解這些是非常重要的,不可能說,僅僅為了技術而技術,只懂技術的人最多做一個編碼工人,而永遠不可能全面地了解整個系統的設計,而編碼工人是越老越不值錢。關於組成原理還有個講授的問題,在我學這門課程時老師講授時把CPU工作原理譽微程序設計這一塊略掉了,理由是我們國家搞CPU技術不如別的國家,搞了這么長時間好不容易出了個龍芯比Intel的還差個十萬八千里,所以建議我們不要學了。我看這在各校也未見得不是個問題吧!若真是如他所說,那中國的計算機科學哪個方向都可以停了,軟硬體,應用,有幾項搞得過美國,搞不過別人就不搞了,那我們坐在這里干什麼?教學的觀念需要轉變的。

模擬電路這東東,如今不僅計算機系學生搞不定,電子系學生也多半害怕。如果你真想軟硬體通吃,那麼建議你先看看邱關源的"電路原理",也許此後再看模擬電路底氣會足些。教材:康華光的"電子技術基礎"(高等教育出版社)還是不錯的(我校電子系在用)。有興趣也可以參考童詩白的書。

數字電路比模擬電路要好懂得多。推薦大家看一看我們北工大劉英嫻教授寫的《數字邏輯》業績人士都說這本書很有參考價值(機械工業出版社的)。原因很明了,實用價值高,能聽聽她講授的課程更是有一種"享受科學"的感覺。清華大學閻石的書也算一本好教材,遺憾的一點是集成電路講少了些。真有興趣,看一看大規模數字系統設計吧(北航那本用的還比較多)。

計算機系統結構該怎麼教,國際上還在爭論。國內能找到的較好教材為Stallings的"Computer Organization and Architectureesigning for Performance"(清華影印
本)。國際上最流行的則是"Computer architecture: aquantitative approach", by Patterson & Hennessy。
操作系統可以隨便選用《操作系統的內核設計與實現》和《現代操作系統》兩書之一。這兩部都可以算經典,唯一缺點就是理論上不夠嚴格。不過這領域屬於Hardcore System,所以在理論上馬虎一點也情有可原。想看理論方面的就推薦清華大學出版社《操作系統》吧,高教司司長張堯學寫的,我們教材用的是那本。 另外推薦一本《Windows操作系統原理》機械工業出版社的,這本書是我國操作系統專家在微軟零距離考察半年,寫作歷時一年多寫成的,教操作系統的專家除了清華大學的張堯學(現高教司司長)幾乎所有人都參加了。Bill Gates親自寫序。裡面不但結合windows2000,xp詳述操作系統的內核,而且後面講了一些windows編程基礎,有外版書的味道,而且上面一些內容可以說在國內外只有那本書才有對windows內核細致入微的介紹,
如果先把形式語言學好了,則編譯原理中的前端我看只要學四個演算法:最容易實現的遞歸下降;最好的自頂向下演算法LL(k);最好的自底向上演算法LR(k);LR(1)的簡化SLR(也許還有另一簡化LALR)。後端完全屬於工程性質,自然又是another story。
推薦教材:Kenneth C.Louden寫的"Compiler Construction Principles and Practice"即是《編譯原理及實踐》(機械工業出版社的譯本)
資料庫要提醒大家的是,會用VFP,VB, Power builder不等於懂資料庫。(這世界上自以為懂資料庫的人太多了!)資料庫設計既是科學又是藝術,資料庫實現則是典型的工程。所以從某種意義上講,資料庫是最典型的一門計算機課程——理工結合,互相滲透。另外推薦大家學完軟體工程學後再翻過來看看資料庫技術,又會是一番新感覺。推薦教材:Abraham Silberschatz等著的 "Database System Concepts".作為知識的完整性,還推薦大家看一看機械工業出版社的《數據倉庫》譯本。

計算機網路的標准教材還是來自Tanenbaum的《Computer Networks》(清華大學有譯本)。還有就是推薦謝希仁的《計算機網路教程》(人民郵電出版社)問題講得比較清楚,參考文獻也比較權威。不過,網路也屬於Hardcore System,所以光看書是不夠的。建議多讀RFC,http://www.ietf.org/rfc.htm里可以按編號下載RFC文檔。從IP的讀起。等到能掌握10種左右常用協議,就沒有幾個人敢小看你了。再做的工作我看放在網路設計上就比較好了。

E. 強連通圖的參考資料

論文
書籍
1、《圖論》(英文版,Graph Theory),作者:(加)W.T. Tutte,機械工業出版社,2004年9月第1版,ISBN: 7-111-14980-7
網站

F. 我這有一些接近全新的電子/計算機/經濟的英文版書籍,現想優惠出售,請問怎麼找到渠道

去拍拍上開個店,便宜賣

G. 大學計算機科學與技術專業有多少課程

計算機科學與技術專業課程不完全解析
1.計算機導論:
計算機科學的基礎課程之一,其教學目的是概要性地對專業課程作介紹,是典型的面向專業新生的課程(即CS0型課程)。認真學習該課程有助於今後的學習,然而這門課程往往容易被新生們忽略……
(教材:可使用學校配發的教材,但建議使用外版翻譯教材。)

2.高級語言程序設計:
計算機科學的基礎課程之一,教學目的是讓本專業同學實際掌握一門程序設計語言並且習得一些程序設計的基本技能,目前的教學語言是C語言。個人認為課程名稱可改為「高級程序設計語言」,因為課程對語言的強調遠勝於對程序設計本質的講解。建議在學習這門課程時配以《程序設計實踐》一書,效果甚佳。
(教材:
①《從問題到程序——程序設計與C語言引論》 機械工業出版社
②《程序設計實踐》 機械工業出版社
③《程序設計語言——實踐之路》 電子工業出版社 )

3.離散數學:
計算機科學基礎課程之一,被譽為計算機科學的數學基礎。其內容博大精深,從中派生出的圖論(圖演算法)、數理邏輯、組合數學以及泛代數等多門專業課程是現代計算機科學和應用數學的主要研究領域。能否學好離散數學對進一步學習以後的專業課程有著非同一般的影響。
(教材及參考書:
①《離散數學》(第四版) 清華大學出版社
②《離散數學導學》機械工業出版社
③《現代應用數學手冊:離散數學卷》清華大學出版社 )

4.電路與電子技術:
電子產業有「朝陽產業」的美譽,被認為是信息時代的工業。這門電子與電路技術可謂是對電子學領域學習的敲門磚。雖然課程本身對計算機科學專業今後的學習影響不大,但掌握這項技能對於學生本身專業素養地提高是大有裨益的。同時,學習這門課程也能為今後學習數字邏輯和微機原理等系統底層方面的課程打好基礎。
(教材:《電子學基礎:電路和元器件》(第四版)清華大學出版社)

5.面向對象程序設計:
如果說上世紀軟體開發領域最偉大的突破是什麼,面向對象程序設計(OOP)必為其中之一。目前主流的程序設計語言,如C++、Java、Python和Delphi等,幾乎清一色支持面向對象。可以說,掌握的面向對象的精髓,便是掌握了我們這個行業的入門鑰匙。我校此課程的教學語言採用的是C++,而就國內C++教學的糟糕現狀來看,若想完整掌握面向對象思想,學生自己不努力是不行的。
(教材及參考書:
①《C++ Primer中文版》(第四版) 人民郵電出版社
②《Essential C++ 中文版》華中科技大學出版社
③《Effective C++ 中文版》(第三版)電子工業出版社
④《Accelerated C++(影印版)》機械工業出版社
⑤《C++語言的設計與演化》機械工業出版社 )

6.數字邏輯:
計算機科學核心課程之一。計算機科學中有一個研究領域即系統設計領域,而本門課程即為這一領域研究的基礎。正確認識與掌握數字邏輯及其設計,暢憨扳窖殖忌幫媳爆顱可以使那些有志於系統底層開發的學生獲益匪淺。
(教材:
①《數字基礎(第八版)》清華大學出版社
②《邏輯與計算機設計基礎》 中國電力出版社 )
7.數據結構:
計算機科學核心課程之一。對數據地有效組織是程序的主要任務之一,演算法的主要操作對象亦為數據結構。從簡單的數組和鏈表,到各色高級的抽象數據類型(ADT),數據結構在程序設計中的地位不言而喻。學好數據結構,是進一步學習專業課的基本前提。可以這么說,一個不懂得如何組織和操控數據的學生,根本就不配當我們計算機科學專業的學生,更不配當一名程序員!!!
(教材:
①《C演算法 第一卷(第三版)》人民郵電出版社
②《程序設計抽象思想——C語言描述》清華大學出版社
③《數據抽象與問題求解——C++語言描述(第四版)》清華大學出版社
④《數據結構與演算法——Java語言描述》機械工業出版社 )

8.計算方法:內容不詳,不敢妄作斷言。 (教材:待定)
// 轉帖者:線性代數、微積分、微分方程等的計算機演算法

9.計算機原理與匯編:
系統底層課程之一,亦為計算機科學核心課程。重點講述計算機(微機)構造以及低級語言——匯編語言的基礎知識。學習這門課程,對進一步學習編譯原理等專業高級課程有很大幫助。
(教材:
①《深入理解計算機系統》中國電力出版社
②《Intel匯編語言程序設計(影印版)》清華大學出版社
③《Windows環境下32位匯編語言程序設計(第二版)》電子工業出版社
④《匯編語言編程藝術》清華大學出版社 )

10.操作系統:
計算機科學的核心課程之一。課程全面講述了操作系統的原理與構造,各類上機實驗更能讓學生對操作系統有深刻地理解。
(教材:
①《操作系統(第三版)》機械工業出版社
②《現代操作系統(第二版)》機械工業出版社
③《Linux內核設計與實現(影印版)》機械工業出版社
④《UNIX系統編程》機械工業出版社
⑤《UNIX環境高級編程(第二版)》人民郵電出版社 )

11.軟體工程:
計算機科學的核心課程之一。近年來,隨著軟體開發革命地進一步深化,批判軟體工程及過程方法改進的著作日益豐富,我們也得以從不良的軟體開放中解放。建議在學習本課程時,聯系自己的實戰,並閱讀批判軟體工程和改良軟體工程的著作。
(教材及參考書:
①《軟體工程:實踐者的研究方法(第五版)》機械工業出版社
②《程序設計心理學(銀年紀念版)》清華大學出版社
③《人月神話(銀年紀念版)》清華大學出版社
④《人件》清華大學出版社 )

12.資料庫原理及應用:
計算機科學與信息學科的好像課程之一。課程講述了資料庫原理以及設計等方面的內容。對於那些注重實效的學生而言,學好這門課程,可以使今後的工作更為輕松。
(教材:《資料庫系統概念(第四版)》機械工業出版社)

13.運籌學及其演算法:
此課程課作為計算機科學的輔助課程,向學生介紹了運籌學方面的演算法,此類演算法屬於現代演算法范疇,本人暫時還未涉獵,故恕難對此課程解析之…… (教材:待定)
// 轉帖者:線性規劃、動態規劃、排隊論、決策分析等等

14.計算機網路:
計算機科學的核心課程之一。課程詳細地介紹了計算機網路的發展、組成和協議方面的內容。對於自我要求較高的同學而言,學好這門課程義不容辭!
(教材:
①《計算機網路(第四版)》清華大學出版社
②《TCP/IP協議族》清華大學出版社 )

15.軟體開發管理:
應該是軟體工程課的附屬課程吧,不詳。 (教材:待定)
// 轉帖者:對於工程,管理重於技術

16.數學建模:
可以說是本專業的相關課程,但其意義及作用目前在下還不甚了解。 (教材:待定)
// 轉帖者:既然學了數學,會用也很重要吧

17.J2EE體系結構:
J2EE是目前我們產業的兩大工業平台之一,學習這門課程,可以為今後涉足企業級開發領域打下基礎。但請注意,J2EE和Java語言本身都是在不斷演進的,因而如果不能在課程結束後持續學習相關技術,恐怕還不等你出大學校門,這門課的內容就已經過時了…… (教材:最新的國外相關教材。)

18.計算機圖形學:
計算機科學的核心課程之一。有關計算機圖形學在各個領域的應用不必在下一一說明了吧。無論是游戲開發,還是航空航天等前沿領域,到處都有計算機圖形學的技術被應用。目前該課程主要用C語言和OpenGL圖形庫進行教學,效果應該還算不錯。
(教材及參考書:
①《計算機圖形學原理與實踐-C語言描述(第二版)》機械工業出版社
②《互動式計算機圖形學——基於OpenGL的自頂向下的方法(第四版)》清華大學出版社
③《OpenGL超級寶典(第三版)》 人民郵電出版社 )

19.微型計算機技術:
計算機專業的核心課程之一。課程詳細地分析了微型計算機(主要是單片機)技術,由於這方面資料奇缺,這門課程可不太受在下歡迎…… (教材:待定)
// 轉帖者:想搞嵌入式的要注意了

20.編譯原理:
計算機科學核心課程之一。如果想要寫出好的程序,編譯原理的相關知識必不可少,因而這門課程是十分重點的一門課程。課程教材「龍書」、「虎書」和「鯨書」更是我們專業的經典著作。
(教材:
①《編譯原理》機械工業出版社
②《現代編譯原理——C語言描述》人民郵電出版社
③《高級編譯器設計與實現》機械工業出版社 )

21.Web系統開發:
目前主流的web開發主要集中在ASP.NET和JSP開發領域 ,當然,還有近來火爆異常的Ajax,以前的CGI和ASP已經不那麼流行了。與J2EE一樣,這是一門必須持續學習的課程,否則,你必將被其所拋棄! (教材:最新國外相關書籍。)

22.嵌入式軟體開發:
這個領域可謂是軟體開發的前沿領域,也是未來軟體業霸主的孕育地之一(另兩個領域為Web開發和企業級開發)。目前的軟體開發領域正蘊含著「泛嵌入式」的潛規則(《程序員》2006年7月刊)。認真並持續學習這門課程,對將來的工作會有莫大的幫助。 (教材:《嵌入式系統開放大全》人民郵電出版社)

23.演算法設計與分析:
計算機科學的核心課程之一。「程序是衣,演算法為魂」(《程序員》2006年3月刊),這門課程是本專業學生所亟需掌握的,如果學不好這門課,那麼,你就不是一名優秀的程序員!
(教材:
①《數據結構與演算法分析-C語言描述》機械工業出版社
②《C演算法 第一卷 (第三版)》人民郵電出版社 )

24.情報檢索與利用:這門課我可沒涉獵過…… (教材:待定)

以上純系復制,完全為了幫你!!!!

H. 請教圖論問題。謝謝。

為了保持唯一性,要排除藍-紅,紅-藍,為兩種情況的可能性,所以要除以重復次數

I. 大學的計算機科學與技術主要學的是什麼

計算機科學與技術專業課程不完全解析
1.計算機導論:
計算機科學的基礎課程之一,其教學目的是概要性地對專業課程作介紹,是典型的面向專業新生的課程(即CS0型課程)。認真學習該課程有助於今後的學習,然而這門課程往往容易被新生們忽略……
(推薦教材:可使用學校配發的教材,但建議使用外版翻譯教材。)

2.高級語言程序設計:
計算機科學的基礎課程之一,教學目的是讓本專業同學實際掌握一門程序設計語言並且習得一些程序設計的基本技能,目前的教學語言是C語言。個人認為課程名稱可改為「高級程序設計語言」,因為課程對語言的強調遠勝於對程序設計本質的講解。建議在學習這門課程時配以《程序設計實踐》一書,效果甚佳。
(推薦教材:
①《從問題到程序——程序設計與C語言引論》 機械工業出版社
②《程序設計實踐》 機械工業出版社
③《程序設計語言——實踐之路》 電子工業出版社 )

3.離散數學:
計算機科學基礎課程之一,被譽為計算機科學的數學基礎。其內容博大精深,從中派生出的圖論(圖演算法)、數理邏輯、組合數學以及泛代數等多門專業課程是現代計算機科學和應用數學的主要研究領域。能否學好離散數學對進一步學習以後的專業課程有著非同一般的影響。
(推薦教材及參考書:
①《離散數學》(第四版) 清華大學出版社
②《離散數學導學》機械工業出版社
③《現代應用數學手冊:離散數學卷》清華大學出版社 )

4.電路與電子技術:
電子產業有「朝陽產業」的美譽,被認為是信息時代的工業。這門電子與電路技術可謂是對電子學領域學習的敲門磚。雖然課程本身對計算機科學專業今後的學習影響不大,但掌握這項技能對於學生本身專業素養地提高是大有裨益的。同時,學習這門課程也能為今後學習數字邏輯和微機原理等系統底層方面的課程打好基礎。
(推薦教材:《電子學基礎:電路和元器件》(第四版)清華大學出版社)

5.面向對象程序設計:
如果說上世紀軟體開發領域最偉大的突破是什麼,面向對象程序設計(OOP)必為其中之一。目前主流的程序設計語言,如C++、Java、Python和Delphi等,幾乎清一色支持面向對象。可以說,掌握的面向對象的精髓,便是掌握了我們這個行業的入門鑰匙。我校此課程的教學語言採用的是C++,而就國內C++教學的糟糕現狀來看,若想完整掌握面向對象思想,學生自己不努力是不行的。
(推薦教材及參考書:
①《C++ Primer中文版》(第四版) 人民郵電出版社
②《Essential C++ 中文版》華中科技大學出版社
③《Effective C++ 中文版》(第三版)電子工業出版社
④《Accelerated C++(影印版)》機械工業出版社
⑤《C++語言的設計與演化》機械工業出版社 )

6.數字邏輯:
計算機科學核心課程之一。計算機科學中有一個研究領域即系統設計領域,而本門課程即為這一領域研究的基礎。正確認識與掌握數字邏輯及其設計,可以使那些有志於系統底層開發的學生獲益匪淺。
(推薦教材:
①《數字基礎(第八版)》清華大學出版社
②《邏輯與計算機設計基礎》 中國電力出版社 )
7.數據結構:
計算機科學核心課程之一。對數據地有效組織是程序的主要任務之一,演算法的主要操作對象亦為數據結構。從簡單的數組和鏈表,到各色高級的抽象數據類型(ADT),數據結構在程序設計中的地位不言而喻。學好數據結構,是進一步學習專業課的基本前提。可以這么說,一個不懂得如何組織和操控數據的學生,根本就不配當我們計算機科學專業的學生,更不配當一名程序員!!!
(推薦教材:
①《C演算法 第一卷(第三版)》人民郵電出版社
②《程序設計抽象思想——C語言描述》清華大學出版社
③《數據抽象與問題求解——C++語言描述(第四版)》清華大學出版社
④《數據結構與演算法——Java語言描述》機械工業出版社 )

8.計算方法:內容不詳,不敢妄作斷言。 (推薦教材:待定)
// 轉帖者:線性代數、微積分、微分方程等的計算機演算法

9.計算機原理與匯編:
系統底層課程之一,亦為計算機科學核心課程。重點講述計算機(微機)構造以及低級語言——匯編語言的基礎知識。學習這門課程,對進一步學習編譯原理等專業高級課程有很大幫助。
(推薦教材:
①《深入理解計算機系統》中國電力出版社
②《Intel匯編語言程序設計(影印版)》清華大學出版社
③《Windows環境下32位匯編語言程序設計(第二版)》電子工業出版社
④《匯編語言編程藝術》清華大學出版社 )

10.操作系統:
計算機科學的核心課程之一。課程全面講述了操作系統的原理與構造,各類上機實驗更能讓學生對操作系統有深刻地理解。
(推薦教材:
①《操作系統(第三版)》機械工業出版社
②《現代操作系統(第二版)》機械工業出版社
③《Linux內核設計與實現(影印版)》機械工業出版社
④《UNIX系統編程》機械工業出版社
⑤《UNIX環境高級編程(第二版)》人民郵電出版社 )

11.軟體工程:
計算機科學的核心課程之一。近年來,隨著軟體開發革命地進一步深化,批判軟體工程及過程方法改進的著作日益豐富,我們也得以從不良的軟體開放中解放。建議在學習本課程時,聯系自己的實戰,並閱讀批判軟體工程和改良軟體工程的著作。
(推薦教材及參考書:
①《軟體工程:實踐者的研究方法(第五版)》機械工業出版社
②《程序設計心理學(銀年紀念版)》清華大學出版社
③《人月神話(銀年紀念版)》清華大學出版社
④《人件》清華大學出版社 )

12.資料庫原理及應用:
計算機科學與信息學科的好像課程之一。課程講述了資料庫原理以及設計等方面的內容。對於那些注重實效的學生而言,學好這門課程,可以使今後的工作更為輕松。
(推薦教材:《資料庫系統概念(第四版)》機械工業出版社)

13.運籌學及其演算法:
此課程課作為計算機科學的輔助課程,向學生介紹了運籌學方面的演算法,此類演算法屬於現代演算法范疇,本人暫時還未涉獵,故恕難對此課程解析之…… (推薦教材:待定)
// 轉帖者:線性規劃、動態規劃、排隊論、決策分析等等

14.計算機網路:
計算機科學的核心課程之一。課程詳細地介紹了計算機網路的發展、組成和協議方面的內容。對於自我要求較高的同學而言,學好這門課程義不容辭!
(推薦教材:
①《計算機網路(第四版)》清華大學出版社
②《TCP/IP協議族》清華大學出版社 )

15.軟體開發管理:
應該是軟體工程課的附屬課程吧,不詳。 (推薦教材:待定)
// 轉帖者:對於工程,管理重於技術

16.數學建模:
可以說是本專業的相關課程,但其意義及作用目前在下還不甚了解。 (推薦教材:待定)
// 轉帖者:既然學了數學,會用也很重要吧

17.J2EE體系結構:
J2EE是目前我們產業的兩大工業平台之一,學習這門課程,可以為今後涉足企業級開發領域打下基礎。但請注意,J2EE和Java語言本身都是在不斷演進的,因而如果不能在課程結束後持續學習相關技術,恐怕還不等你出大學校門,這門課的內容就已經過時了…… (推薦教材:最新的國外相關教材。)

18.計算機圖形學:
計算機科學的核心課程之一。有關計算機圖形學在各個領域的應用不必在下一一說明了吧。無論是游戲開發,還是航空航天等前沿領域,到處都有計算機圖形學的技術被應用。目前該課程主要用C語言和OpenGL圖形庫進行教學,效果應該還算不錯。
(推薦教材及參考書:
①《計算機圖形學原理與實踐-C語言描述(第二版)》機械工業出版社
②《互動式計算機圖形學——基於OpenGL的自頂向下的方法(第四版)》清華大學出版社
③《OpenGL超級寶典(第三版)》 人民郵電出版社 )

19.微型計算機技術:
計算機專業的核心課程之一。課程詳細地分析了微型計算機(主要是單片機)技術,由於這方面資料奇缺,這門課程可不太受在下歡迎…… (推薦教材:待定)
// 轉帖者:想搞嵌入式的要注意了

20.編譯原理:
計算機科學核心課程之一。如果想要寫出好的程序,編譯原理的相關知識必不可少,因而這門課程是十分重點的一門課程。課程教材「龍書」、「虎書」和「鯨書」更是我們專業的經典著作。
(推薦教材:
①《編譯原理》機械工業出版社
②《現代編譯原理——C語言描述》人民郵電出版社
③《高級編譯器設計與實現》機械工業出版社 )

21.Web系統開發:
目前主流的web開發主要集中在ASP.NET和JSP開發領域 ,當然,還有近來火爆異常的Ajax,以前的CGI和ASP已經不那麼流行了。與J2EE一樣,這是一門必須持續學習的課程,否則,你必將被其所拋棄! (推薦教材:最新國外相關書籍。)

22.嵌入式軟體開發:
這個領域可謂是軟體開發的前沿領域,也是未來軟體業霸主的孕育地之一(另兩個領域為Web開發和企業級開發)。目前的軟體開發領域正蘊含著「泛嵌入式」的潛規則(《程序員》2006年7月刊)。認真並持續學習這門課程,對將來的工作會有莫大的幫助。 (推薦教材:《嵌入式系統開放大全》人民郵電出版社)

23.演算法設計與分析:
計算機科學的核心課程之一。「程序是衣,演算法為魂」(《程序員》2006年3月刊),這門課程是本專業學生所亟需掌握的,如果學不好這門課,那麼,你就不是一名優秀的程序員!
(推薦教材:
①《數據結構與演算法分析-C語言描述》機械工業出版社
②《C演算法 第一卷 (第三版)》人民郵電出版社 )

24.情報檢索與利用:這門課我可沒涉獵過…… (推薦教材:待定)

以上純系復制,完全為了幫你!!!!

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731