關於作者:程序猿石頭(ID: tangleithu),從十八縣貧困農村一路逆襲上清華(點這里查看我的逆襲之路),BAT某廠P7,是前大疆(無人機)技術主管。
本文首發於微信公眾號,原文鏈接,轉載請全文保留。后台回復關鍵字 “1024” 獲取程序員大廠面試指南。
背景
大家好,我是石頭哥。
今天這篇文章,牆裂建議想提高核心競爭力的程序員同學重點關注,並付出行動。
我曾經在 從一道面試題談談一線大廠碼農應該具備的基本能力這篇文章中,強調我們在倉促地碼着繁瑣的業務代碼時候,希望不要拋棄一些基礎的東西,多培養一下我們的編程素養。
在用編程語言,利用各種工具來實現我們想要達到的目的的時候,能做到“知其然,知其所以然”更好。
數據結構就是其中最重要的基礎之一。
我也曾經在多次場合推薦過(比如萬字長文講述我是怎樣保送清華的 | 寒門學子奮斗史(四)),清華計算機系的鄧老師這門公開課《數據結構》。
偶然發現這門課程,2021 年上半年又開課了,今天特此又來推薦給大家,發自內心推薦,實名點贊。一有機會,都會各種到處宣傳。
鄧老師深受清華校內外的學生喜愛,他和他的課程也獲獎無數,后文你將看到大家對鄧老師的評價,
43W+人學習
緣起
我在清華時,上過鄧老師的 2 門課程:《數據結構》、《計算幾何》。《計算幾何》研究生期間選修的專業課程,《數據結構》是旁聽本科生的課程。
親身體驗過,那是真的很贊,被實力圈粉。他在講授《數據結構》和《計算幾何》方面擁有20多年的經驗,課堂用的 PPT 和 動畫效果也特別贊、特別贊、特別贊(還能額外學到人文知識!)。
這是我上過現場效果最好,最生動的課程(沒有之一)。在學校時候,線下教室也飽滿,線上公開課學堂在線也是爆滿。
我曾經報名的課程
這真不是我在這里爆吹,這門課程是清華大學評選出的首批 7 門標桿課程之一。你可以去看看知乎上的討論(https://www.zhihu.com/question/306632594)。
鄧公《數據結構》實至名歸,截圖自知乎
知乎評論:我從來沒碰到過能如此深入淺出把數據結構講得這么透徹又有趣的老師
識鄧公好比遇美酒
在清華大學2017級本科生開學典禮上發言,來源清華大學新聞網
鄧俊輝,清華大學計算機系教授。1993和1997年分別於清華大學計算機系獲學士、博士學位,1997年起在清華大學任教,他在講授“數據結構”和“計算幾何”方面擁有20多年的經驗。
古人雲,“天若不愛酒,酒星不在天;地若不愛酒,地應無酒泉”,天地愛酒,人亦如此。
有學子言:“識鄧公好比路遇美酒:越存越香,越品越醇”,好比美酒的“鄧公”所言即是清華大學新百年教學成就獎的獲得者,計算機系教授 —— 鄧俊輝。(來源:https://news.tsinghua.edu.cn/info/1070/40526.htm)
鄧老師說,數據結構與算法(簡稱DSA)是個非常開放的專題,學習過程沒有終點,任何一門課程都不可能窮盡:(內容來自鄧老師課程主頁)
若將DSA比作汽車,則熟悉基本的數據結構的基本功能與使用方法,猶如拿駕照會開車能上道。
- 懂得不同DSA之間的差異及其適用場合,懂得針對問題需要選取適當的DSA,猶如懂得如何選購適宜於自己的汽車。
- 懂得對DSA做適當的裁剪、擴充和改造,並優化組合,猶如玩車的行家里手,有DIY的能力和樂趣。
- 探索DSA的優化極限,能夠完成從內部優化到外部封裝的整個過程,則是設計師與工程師的任務與要求。
課程內容
鄧老師主頁封面
PPT、板書、教材(示例代碼)、教學演示,無一不稱贊。
制作精美的 PPT
首先,我們來看看 PPT(文末附 PPT 下載)
PPT,鄧老師每年會更新迭代,圖為 2021 年
大部分章節的首頁,均有一兩句“引言”:或是名言名句,或者名著節選,也有歌詞。
可怕的是,還基本上都會和本節的內容有關系!有關系!有關系!(可見鄧老師的用心程度之高!)
比如隨便選了其中的 3 頁 PPT:
- 棧 —— “陛下用群臣,如積薪耳,后來者居上”,語出《史記·汲鄭列傳》。
- 紅黑樹 —— “這時,我看見兩只大螞蟻,一只紅不棱登,另一只個兒特大,差不離有半英寸長,是黑不溜秋的,它們兩個正在相互凶毆...”,美國作家 亨利·戴維·梭羅 的《瓦爾登湖》
- 圖的廣度優先搜索 —— 《五環之歌》,岳雲鵬
<<< 左右滑動見更多 >>>
不好意思,知識儲備不夠,看《數據結構》PPT,讓我一邊百度一邊,學起了人文知識。難怪聽說不少非計算機相關專業的學生也來旁聽課程,原來是為了學人文知識,笑😁
生動的板書演示
我們再來看看,鄧老師的板書演示。
看看這板書演示1
看看這板書演示2
課堂效果好的背后其實還有一套軟件,叫“LectureMate”,是鄧老師開發的教學演講輔助工具。
鄧老師也是無償捐獻出來供非盈利使用,可直接到老師主頁下載使用。
正規院校教師可直接免費使用完整功能的教學工具
不得不說,鄧老師的字也是非常漂亮。
鄧公親筆寫的書簽送給學生,圖片來源見水印
教材、教學演示
我們再來看看教材。(在公眾號“程序猿石頭”后台回復“清華數據結構” 免費下載)
教材,到目前為止一共出了 3 版,最新版如下所示:
數據結構
數據結構
我手里有的實體書是第二版,長這個樣子:
數據結構(C++語言版)
目前,鄧老師教材均以 C++語言作為示例,但其實數據結構掌握並不依賴於某一門特定的語言。重點是我們要掌握其中的思想。
配套源碼
我看鄧老師,早年期間(2006年)也出過 Java 版本的教材,如下:
數據結構與算法(Java描述)
鄧老師一直把教書育人、傳播知識放在首位。你看,他將上述所有相關教學材料均向公眾開放。
鄧老師相關教學資料向公共開放
還在等什么呢?抓緊去學堂在線學習鄧老師的數據結構課程吧。
這門課程不僅適用於在校生,工作之后,若想補齊鞏固相應的基礎,也是很好的選擇,關鍵還免費(證書認證收費)。
這不比外面各種培訓班香太多嗎?
也感謝現在科技的發達,同時也感謝鄧老師的無私,讓你足不出戶即可享受清華名師的教學。
后記
真正能學好了這門課程,什么 BAT 大廠,都是小 case,學完后你找我,幫你推薦到各個大廠。
大家抓緊去清華學堂免費在線注冊學習吧(學堂在線,打錢!),視頻公開課(點擊左下角閱讀原文即可訪問)、配合鄧老師的教材,真的很棒!
為了方便大家,我已經把相關學習資料下載好了(當然你也可以到鄧老師課程主頁下載),你只需要[點擊這里](https://t.1yb.co/taVA)即可領取。
關於作者:程序猿石頭(ID: tangleithu),從十八縣貧困農村一路逆襲上清華(點擊這里查看我的逆襲之路),目前在BAT某廠打工,是前大疆(無人機)技術主管。
歡迎掃碼加入互聯網大廠內推群 & 技術交流群,一起學習、共同進步。后台回復關鍵字 “0” 送阿里技術大禮包。