前言
這是一個真實的故事,在筆者今年參加考研複試的時候,由于疫情原因是線上複試,但是一些流程還是沒變的,機試+筆試完之後就是面試了。
然後就開始緊張的面試了,大家都知道面試在最開始就是英語部分,當老師說咱們開始英語口語,我把早已背的滾瓜爛熟的個人介紹藏在腦海中正準備一洩而出等待老師說"Please introduce yourself"的時候,事情突然發生反轉,老師來了一句:"Do you know who won the Turing prize?". 我使勁皺着眉頭假裝自己很努力思考的樣子(實際本來就不會嘛),說完還不忘用中文偷偷告訴我:圖靈獎。我深沉的注視在場的面試官說了句:"Sorry, I don't know" (我隻知道這個獎但我也不知道誰得過獎啊)。

老師說不要緊,再來一個:"Do you know who put forward the relational model of relational database?" ,我停頓半天皺着眉頭假裝沒聽清,老師直接說中文 "你知道關系資料庫的關系模型誰提出的嘛?" 我眉頭皺的更緊了,又說了句:"Sorry, I don't know" (這……)。
此時的我心情是覺得太倒黴了,咋問這個問題,不過還好後面老師問我加密算法有哪些,有一些爬蟲的經驗知道一些些加密算法我用英文踉踉跄跄的說了出來,并介紹了一些差別,還好後面回答的還行前面筆試機試也還行才很險的苟上岸。
最後老師說了一句關系模型的提出者也是圖靈獎的獲得者,我就很納悶:"難道老師以為我知道誰提出關系模型但是不知道他拿過啥獎嘛!誰拿過圖靈獎我不知道,誰提出關系模型我更不知道"!但我還是笑嘻嘻的和老師說道:"哈哈,這個觸及到盲區了,回去了解一波" !不過具體了解沒了解,你們都知道的。
什麼是圖靈獎
圖靈獎(Turing Award),全稱A.M. 圖靈獎(A.M Turing Award),是由美國計算機協會(ACM)于1966年設立的計算機獎項,名稱取自艾倫·麥席森·圖靈(Alan M. Turing),旨在獎勵對計算機事業作出重要貢獻的個人 。圖靈獎對獲獎條件要求極高,評獎程式極嚴,一般每年僅授予一名計算機科學家。圖靈獎是計算機領域的國際最高獎項,被譽為 "計算機界的諾貝爾獎"。
圖靈獎一般在每年3月下旬頒發。從1966年至2019年,圖靈獎共授予72名獲獎者,以美國、歐洲科學家為主。據統計,截至2020年3月,世界各高校的圖靈獎獲獎人數依次為美國斯坦福大學(28位)、美國麻省理工學院(26位)、美國加州大學伯克利分校(25位)、美國哈佛大學(14位)和美國普林斯頓大學(14位)。
2000年,華人科學家姚期智(生于上海)獲圖靈獎,是華人第一次也是唯一一次獲得圖靈獎。
Codd博士與關系模型
當然短期内沒了解誰拿過圖靈獎(複試完該玩的玩、搞畢設的搞畢設、開黑的開黑),但是這畢竟是一道曾經的坎,過了比較久的時間還是不甘心,打開了百度搜尋 關系資料庫 關系模型 關鍵字找到了答案:
也從中找到了答案,順便大家也科普一下:
1970年,IBM的研究員E.F.Codd博士發表《大型共享資料銀行的關系模型》一文提出了關系模型的概念,論述了範式理論和衡量關系系統的12條标準,如定義了某些關系代數運算,研究了資料的函數相關,定義了關系的第三範式,進而開創了資料庫的關系方法和資料規範化理論的研究,他為此獲得了1981年的圖靈獎。
後來Codd又陸續發表多篇文章,奠定了關系資料庫的基礎。關系模型有嚴格的數學基礎,抽象級别比較高,而且簡單清晰,便于了解和使用。但是當時也有人認為關系模型是理想化的資料模型,用來實作DBMS是不現實的,尤其擔心關系資料庫的性能難以接受,更有人視其為當時正在進行中的網狀資料庫規範化工作的嚴重威脅。為了促進對問題的了解,1974年ACM牽頭組織了一次研讨會,會上開展了一場分别以Codd和Bachman為首的支援和反對關系資料庫兩派之間的辯論。這次著名的辯論推動了關系資料庫的發展,使其最終成為現代資料庫産品的主流。
教你們一招:以後面試官問你熟悉關系資料庫(MySQL)嗎,你就往Codd博士 扯上一波,然後歌頌一波它的簡要事迹再說他在1981年因為在關系資料庫理論的研究獲得圖靈獎,并帶上一臉贊歎和仰慕的表情。面試官肯定感覺不錯:這小夥子底子可以啊,态度也挺好的,加分加分!不出意外穩妥拿到offer機率大大增加!(如果這招有用記得回來三連一波)。
算法大家與圖靈獎
Dijkstra(迪科斯徹)
雖然心中圖靈獎的獲得者盲區已經打破,但是肯定止不住好奇去翻翻哪些人得了圖靈獎,看了一下大部分都是人工智能數學領域還有一部分就是偏底層或者資料庫相關都是陌生而難記的面孔,我有些失望。但突然找到一個熟悉的面孔:Dijkstra
哇,這個算法不是我們上資料結構與算法圖論中必學的嘛,圖論算法掐指可數,Dijkstra、prim、floyed再加上經典的dfs和bfs嘛!我興緻勃勃的點開Dijkstra大佬的介紹,Dijkstra大佬被稱為結構程式設計之父 ,他有以下的成就:
知曉的:goto有害論(耳熟);第一個Algol 60編譯器的設計者和實作者(厲害啊);THE作業系統的設計者和開發者(真大佬啊!);
熟悉的:Dijkstra最短路徑算法(以它而聞名);銀行家算法的創造者; 解決了“哲學家聚餐”問題;提出信号量和PV原語;
此時的我已經很震驚了,我知道pv信号量和原語,也知道銀行家算法,哲學家進餐問題都是作業系統很經典的問題,沒想到都是Dijkstra大佬提出和發現的,真的強強強!并且Dijkstra和與D. E. Knuth并稱為我們這個時代最偉大的計算機科學家的人。
Floyd(弗洛伊德)
Dijkstra是經典的單源求最短路徑,而與之對應很流行的多源最短路徑算法—Floyd(弗洛伊德)算法,該算法名稱以創始人之一、1978年圖靈獎獲得者、斯坦福大學計算機科學系教授羅伯特·弗洛伊德命名。此外在算法方面,弗洛伊德(Floyd)和威廉姆斯(J.Williams)在1964年共同發明了著名的堆排序算法heapSort(筆者前幾天剛寫的竟然沒發現)!
Hoare(霍爾)
談起排序,那快排肯定不可缺少啊,霍爾爵士(英國計算機科學家)就是快速排序的發明者,巧的是霍爾爵士在1980年獲得圖靈獎。
Niklaus Wirth(沃斯)
憑借一句話獲得圖靈獎的Pascal之父——Niklaus Wirth(沃斯) ,讓他獲得圖靈獎的這句話就是他提出的著名公式:"算法+資料結構=程式" ,作為程式員,上大學第一節c語言或者資料結構與算法課堂的時候我們就聽老師講過這句話。這個公式對計算機科學的影響程度足以類似實體學中愛因斯坦的“E=MC^2”—一個公式展示出了程式的本質。
結語
通過一件小事發現了有趣的聯系。都有着共同的聯系—圖靈獎,在以前,我的認知是這樣的:
通過本篇的整理和學習,現在對一些知識有着更條理化的認識:
當然,圖靈獎的得主非常多,每位得獎主都是了不起的人才,都是我輩楷模,這裡僅列舉所聯系到、熟悉和資料結構與算法相關的得獎主,其他的就不一一列舉啦!
雖然這并不是一件非常大的事情,源于複試的一個提問,但通過後來的查找總讓我對熟悉的算法和人物有着煥然一新的感覺:原來還是這樣啊! 而生活中、工作中、再或學習中有很多類似的地方,我們可能隻差一步就能發現更多、建立更多有效的聯系以及知識體系結構。而我們常常都是浮于表面,希望在日後的學習生活中能與大家同作一個有心人。