九章算法班 - 課程大綱


第1章 Algorithm Interview && Coding Style

  · 通過strStr這一道常見面試題講解面試中的常見誤區
  · 從面試官的角度分析面試的考察點
  · 從Subset中了解算法面試中模板的重要性
  · 面試常見問題答疑

第2章 二分搜索 Binary Search
  · 學習Binary Search的通用模板,不再死循環
  · 講解Search in Rotated Sorted Array等5-7道高頻二分搜索題

第3章 二叉樹問題與分治算法 Binary Tree & Divide Conquer
  · 二叉樹的深度優先遍歷 Binary Tree DFS Traversal
  · 先序/中序/后序 Preorder / inorder / postorder
  · 分治 Divide & Conquer
  · DFS模板 Introduce DFS Template
  · 二叉樹的寬度優先遍歷 Binary Tree BFS Traversal
  · BFS模板 Introduce BFS template
  · 二叉搜索樹 Binary Search Tree

第4章 動態規划 Dynamic Programming I
  · 動態規划算法的適用條件
  · 動態規划算法的四個解題要素
  · 動規的兩種實現方式:記憶化搜索 vs 循環遞推
  · 面試中動態規划的常見類型
  · 坐標型動態規划

第5章 動態規划 Dynamic Programming II
  · 單序列動態規划(下) Sequnece DP
  · 雙序列動態規划 Two Sequences DP

第6章 鏈表 Linked List
  · 介紹Dummy Node在鏈表問題中的運用 Introduce Dummy Node in Linked List
  · 你必須知道的幾點Linked List的常用技巧 Basic skills in Linked List you should know
  · 兩根指針算法 Two pointers
  · 常見問題講解 Frequent Questions

第7章 數組與數 Array & Numbers
  · 旋轉排序數組相關問題與三步翻轉法的運用 Rotated Sorted Array & 3-step Reversion
  · 兩個排序數組的中位數 Median of Two Sorted Array
  · 子數組相關問題 SubArray
  · 兩根指針與x-sum問題 Two Pointers & x-sum
  · 分割數組相關問題 Partition Array

第8章 數據結構 Data Structure
  · 線性數據結構
  · 隊列的原理、實現和運用 Queue
  · 棧的原理、實現和運用 Heap
  · 哈希表的原理、實現和運用 HashMap
  · 樹形數據結構
  · 堆的原理、實現和運用 Heap

第9章 圖與搜索 Graph & Search
  · 圖上的寬度優先搜索 Graph BFS
  · 拓撲排序 Topological Sorting
  · 組合類深度優先搜索 Combination Related DFS
  · 排列類深度優先搜索 Permutation Related DFS

.........................................................................................................................................................................

·面試誤區:
  ·做過的題、簡單的題肯定能過。
  ·算法想出來了就能過。
  ·代碼寫出來了就能過。

·面試中考察的基本功:
  ·程序風格Coding Style
    ·變量名命名,縮進,括號
  ·Coding習慣,Bug Free
    ·異常檢測,邊界處理
  ·溝通
    ·讓面試官時刻明白你的意圖
    ·悶頭就開始寫 VS 沒寫一句話就BB半天
  ·測試
    ·主動給出Testcase,Cover掉所有情況

·你真的會面試么?
  ·做題之前,是否在白紙上寫過一遍
    ·不停的在LintCode提交知道AC?
  ·刷200多題,吃透了幾題?
    ·做過的題是不是還可能不會做?
  ·題目不會的時候直接說不會么?
    ·面試官是Co-worker
  ·是不是覺得面試官在為難你?
    ·Follow Up Question

·算法,永遠的痛
  ·題做了很多,但就是記不住解法
  ·從來就沒有弄明白過動態規划是怎么回事
  ·這題好像見過,不過還是不知道怎么做
  ·LintCode,CC150都刷了,新題還是跪
  ·網上的解答那么多次,到底哪個是對的?
  ·一定要答出O(n)的方法么?O(nlogn)的可以么?
  ·到底刷到什么程度去面試才夠?

·如何准備面試算法題
  ·“面試”算法題,其實很簡單
    ·考查范圍很窄,數來數去就幾個內容
    ·難度不會太深,更重要的是Coding質量
  ·某位商學院轉行的小伙伴在我們的幫助下花了30天從0基礎算法搞定常見算法最后拿到Google、Facebook等一流公司Offer
    ·在刷題時,總結、歸類相似題目
    ·找出適合同一類題目的模板程序

·正確的解題總結報告
  ### 解題報告
  xxx一句話概括這個題你要干嘛

  ### 核心思路
  xxxxxxx

  ### 時間復雜度 & 空間復雜度
  xxxxxx

  ### 有哪些我做過的相關題目
  xxxxxxx

  ### 哪些條件提示我想到了這個題的解法
  xxxxxxxxx

·好鋼用在刀刃上
  ·不要把時間浪費在那些基本不會考而你又很心虛的內容上,比如KMP,紅黑樹,AVL,ACM競賽題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM