掌握常見算法基礎(chǔ)知識(shí)
詳細(xì)講解常見算法的基本原理,并提供相關(guān)學(xué)習(xí)資料
熟悉常見算法解題思路
深入講解常見算法題型解題思路,并提供最優(yōu)解和代碼
熟練掌握簡(jiǎn)單和普通難度題目
每節(jié)課都有配套練習(xí)幫助你鞏固提高,并提供答疑輔導(dǎo)
課程內(nèi)容
復(fù)雜度估算和排序算法
1)認(rèn)識(shí)時(shí)間復(fù)雜度和空間復(fù)雜度
2)認(rèn)識(shí)對(duì)數(shù)器
3)冒泡排序
4)選擇排序
5)插入排序
6)如何分析遞歸過程的時(shí)間復(fù)雜度
7)歸并排序
8)小和問題
復(fù)雜度估算和排序算法
1)荷蘭國(guó)旗問題
2)隨機(jī)快速排序
3)堆結(jié)構(gòu)與堆排序
4)認(rèn)識(shí)排序算法的穩(wěn)定性
5)認(rèn)識(shí)比較器
6)桶排序
7)計(jì)數(shù)排序
8)基數(shù)排序
9)數(shù)組排序后的最大差值問題
10)排序算法在工程中的應(yīng)用
棧、隊(duì)列、鏈表、數(shù)組和矩陣結(jié)構(gòu)介紹及常見面試題講解
1)介紹棧結(jié)構(gòu)及其面試題目
2)介紹隊(duì)列結(jié)構(gòu)及其面試題目
3)介紹鏈表結(jié)構(gòu)及其面試題目
4)介紹數(shù)組結(jié)構(gòu)及其面試題目
5)介紹矩陣結(jié)構(gòu)及其面試題目
6)二分搜索的擴(kuò)展
二叉樹結(jié)構(gòu)
1)二叉樹結(jié)構(gòu)
2)二叉樹的遞歸與非遞歸遍歷
3)打印二叉樹
4)判斷搜索二叉樹
5)判斷完全二叉樹
6)判斷平衡二叉樹
7)折紙問題
8)二叉樹節(jié)點(diǎn)的前驅(qū)節(jié)點(diǎn)與后繼節(jié)點(diǎn)
9)二叉樹的序列化和反序列化
和哈希函數(shù)有關(guān)的三個(gè)結(jié)構(gòu)與并查集
1)哈希函數(shù)與哈希表
2)布隆過濾器詳解
3)一致性哈希結(jié)構(gòu)
4)并查集結(jié)構(gòu)與應(yīng)用(島問題)
圖算法
1)圖結(jié)構(gòu)的表示方法
2)圖的深度優(yōu)先遍歷與寬度優(yōu)先遍歷
3)拓?fù)渑判騿栴}
4)最小生成樹問題
5)單源最短路徑問題
前綴樹、堆結(jié)構(gòu)和貪心算法
1)前綴樹
2)堆結(jié)構(gòu)的擴(kuò)展與應(yīng)用
3)介紹貪心算法及其相關(guān)題目
4)在面試中如何快速的嘗試出貪心策略
暴力遞歸到動(dòng)態(tài)規(guī)劃
1)遞歸
2)動(dòng)態(tài)規(guī)劃
3)如何把暴力遞歸套路的變成動(dòng)態(tài)規(guī)劃