iT邦幫忙

DAY 8
5

資訊學院的30門課系列 第 8

資訊學院的30堂課-資料結構 Data Structure

  • 分享至 

  • xImage
  •  

Data Structure說是資訊學院的精華所在,如果有人反對,應該不是唸CS的吧。長官又指定一個其他組員搞不定的工作過來了,任務是因應組織調整,變動人事資料表,但是資料來源是LDAP,沒有開放大量讀取的權限,最棘手的是,資料來源不是常見的關聯式資料,如Oracle或Informix,不單單是搞定ODBC Driver就ok了,那該怎麼辦呢?
Data Structure說是資訊學院的精華所在,如果有人反對,應該不是唸Computer Science的吧!鏈結串列、Binary Tree、B-Tree、in-order、pre-order、post-order、recursive,等等不但是程式設計的延伸,還必須承接後續高年級課程,如人工智慧要用到決策樹,不但是計算機概論常出考古題的所在,在考研究所或國家考試時,也常是必選科目。

長官指定一個其他組員搞不定的工作過來了,任務是因應組織調整,變動人事資料表,但是資料來源是LDAP,沒有開放大量讀取的權限,一次只能抓一筆,最棘手的是,資料來源不是常見的關聯式資料,如Oracle或Informix,不單單是搞定ODBC Driver就ok了,那該怎麼辦呢?

我先到書局罰站了一下,帶回了一本Visual C++的書,然後我引入ladp的dll,連上ldap主機,先抓取一筆人員資料看一下,我所要的姓名、組織代碼,電話甚至學歷都有,另外再抓取一筆單位資料,發現了裏頭有上層組織的代碼,這不就是樹狀結構嗎?

這時候,求學時代所學的Data Structure就派上用場,要dump出來有兩個做法,一個是先深(DFS),一個是先淺(BFS),我比較懶惰,不想去寫queue或是找STL,我就利用「遞迴呼叫就是一種堆疊的觀念」,抓出了六個分公司當root,實作六次先深尋訪,呼叫完遞迴後,就成功的完成了這個專案,再將這個AP後於每天半夜排程後,後來的組織整併,就與我們沒有關係了,因為都自動處理好了。

昨天在PTT的Soft_Job板上爬文,看到有人抱怨,上104找來的面試的人,DFS與BFS都搞不清楚,還好至少我還記得修課時教什麼,因為期中考考過BFS。

資訊學院的30門課-課程一覽表


上一篇
資訊學院的30門課-微積分(上)calculus
下一篇
資訊學院的30堂課-資料庫系統管理 DBMS
系列文
資訊學院的30門課30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
krarm
iT邦好手 1 級 ‧ 2011-10-08 18:16:41

新增書本照片一張,我的課本後來借給考研究所的同學了,這本是後來在舊書攤買的。
簡潔的code與point,讓我很容易只看C Code而不用看課文,這是我收藏的原因。

我要留言

立即登入留言