班級規(guī)模及環(huán)境--熱線:4008699035 手機(jī):15921673576( 微信同號) |
每個班級的人數(shù)限3到5人,互動授課, 保障效果,小班授課。 |
上間和地點(diǎn) |
上部份地點(diǎn):【上海】同濟(jì)大學(xué)(滬西)/新城金郡商務(wù)樓(11號線白銀路站)【深圳分部】:電影大廈(地鐵一號線大劇院站)/深圳大學(xué)成教院【北京分部】:北京中山學(xué)院/福鑫大樓【南京分部】:金港大廈(和燕路)【武漢分部】:佳源大廈(高新二路)【成都分部】:領(lǐng)館區(qū)1號(中和大道)【沈陽分部】:沈陽理工大學(xué)/六宅臻品【鄭州分部】:鄭州大學(xué)/錦華大廈【石家莊分部】:河北科技大學(xué)/瑞景大廈 最近開間(周末班/連續(xù)班/晚班):2019年1月26日 |
實(shí)驗(yàn)設(shè)備 |
◆小班教學(xué),教學(xué)效果好 ☆注重質(zhì)量☆邊講邊練 ☆合格學(xué)員免費(fèi)推薦工作 ★實(shí)驗(yàn)設(shè)備請點(diǎn)擊這兒查看★ |
質(zhì)量保障 |
1、培訓(xùn)過程中,如有部分內(nèi)容理解不透或消化不好,可免費(fèi)在以后培訓(xùn)班中重聽; 2、培訓(xùn)結(jié)束后,授課老師留給學(xué)員聯(lián)系方式,保障培訓(xùn)效果,免費(fèi)提供課后技術(shù)支持。 3、培訓(xùn)合格學(xué)員可享受免費(fèi)推薦就業(yè)機(jī)會。☆合格學(xué)員免費(fèi)頒發(fā)相關(guān)工程師等資格證書,提升職業(yè)資質(zhì)。專注高端技術(shù)培訓(xùn)15年,端海學(xué)員的能力得到大家的認(rèn)同,受到用人單位的廣泛贊譽(yù),端海的證書受到廣泛認(rèn)可。 |
部份程大綱 |
|
- 第1章
在這個課程中,我們將從底層實(shí)現(xiàn)諸多數(shù)據(jù)結(jié)構(gòu),從簡單,到復(fù)雜,并且探索他們的應(yīng)用。在這一章,我們將來看一看數(shù)據(jù)結(jié)構(gòu)的具體作用,學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的誤區(qū),學(xué)習(xí)這個課程的注意事項(xiàng),和課程環(huán)境的基本搭建:) ...
- 1
1-2 學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)(和算法)到底有沒有用?
1-3 關(guān)于課程學(xué)習(xí)的更多注意事項(xiàng)
1-4 課程編程環(huán)境搭建
1-5 關(guān)于課程的其他語言支持:Python,C++,JS
第2章 不要小瞧數(shù)組
數(shù)組,看似是最簡單的數(shù)據(jù)結(jié)構(gòu),但是,大多數(shù)語言為我們提供的都是靜態(tài)數(shù)組,如何封裝一個屬于我們自己的動態(tài)數(shù)組,將是這一章討論的重點(diǎn)。同時,我們也將探討泛型,復(fù)雜度分析,乃至復(fù)雜度的震蕩,等相關(guān)高級話題
- 2-1 使用Java中的數(shù)組
2-2 二次封裝屬于我們自己的數(shù)組
2-3 向數(shù)組中添加元素
2-4 數(shù)組中查詢元素和修改元素
2-5 包含,搜索和刪除
2-6 使用泛型
2-7 動態(tài)數(shù)組
2-8 簡單的復(fù)雜度分析
2-9 均攤復(fù)雜度和防止復(fù)雜度的震蕩
第3章 棧和隊(duì)列
棧和隊(duì)列都是極其簡單的線性數(shù)據(jù)結(jié)構(gòu),其中的操作甚至都是數(shù)組操作的子集,但卻在計(jì)算機(jī)科學(xué)中有著極其重要的應(yīng)用。在這一章,我們就來探索棧和隊(duì)列的奧秘。我們將看到使用底層數(shù)據(jù)結(jié)構(gòu)搭建上層數(shù)據(jù)結(jié)構(gòu)的過程,同時對于隊(duì)列,我們也將改進(jìn)底層結(jié)構(gòu),完成循環(huán)隊(duì)列的實(shí)現(xiàn)。...
- 3-1 棧和棧的應(yīng)用:撤銷操作和系統(tǒng)棧
3-2 棧的基本實(shí)現(xiàn)
3-3 棧的另一個應(yīng)用:括號匹配
3-4 關(guān)于Leetcode的更多說明
3-5 數(shù)組隊(duì)列
3-6 循環(huán)隊(duì)列
3-7 循環(huán)隊(duì)列的實(shí)現(xiàn)
3-8 數(shù)組隊(duì)列和循環(huán)隊(duì)列的比較
第4章 最基礎(chǔ)的動態(tài)數(shù)據(jù)結(jié)構(gòu):鏈表
在這一章,我們將接觸第一個動態(tài)數(shù)據(jù)結(jié)構(gòu):鏈表。我們將通過對鏈表的底層實(shí)現(xiàn),更深入的理解對引用(或者是指針)的操作。同時,我們也將利用鏈表,實(shí)現(xiàn)棧和隊(duì)列,并基于不同的底層實(shí)現(xiàn),進(jìn)行性能的比較。
- 4-1 什么是鏈表
4-2 在鏈表中添加元素
4-3 使用鏈表的虛擬頭結(jié)點(diǎn)
4-4 鏈表的遍歷,查詢和修改
4-5 從鏈表中刪除元素
4-6 使用鏈表實(shí)現(xiàn)棧
4-7 帶有尾指針的鏈表:使用鏈表實(shí)現(xiàn)隊(duì)列
第5章 鏈表和遞歸
很多同學(xué)都會忽視鏈表和遞歸之間千絲萬縷的聯(lián)系。其實(shí),鏈表也擁有著天然的遞歸結(jié)構(gòu)。我們在這一章,就將通過鏈表這種簡單的數(shù)據(jù)結(jié)構(gòu),一點(diǎn)一點(diǎn)為大家揭開遞歸,這個在計(jì)算機(jī)的世界中最為重要的邏輯構(gòu)成方式的神秘面紗!...
- 5-1 Leetcode中和鏈表相關(guān)的問題
5-2 測試自己的Leetcode鏈表代碼
5-3 遞歸基礎(chǔ)與遞歸的宏觀語意
5-4 鏈表的天然遞歸結(jié)構(gòu)性質(zhì)
5-5 遞歸運(yùn)行的機(jī)制:遞歸的微觀解讀
5-6 遞歸算法的調(diào)試
5-7 更多和鏈表相關(guān)的問題
第6章 二分搜索樹
二分搜索樹將是我們接觸的第一個非線性數(shù)據(jù)結(jié)構(gòu)。在這一章,我們將通過對二分搜索樹的底層實(shí)現(xiàn),了解對樹結(jié)構(gòu)的基本操作方式。同時,由于樹結(jié)構(gòu)天然的遞歸性質(zhì),我們將在這一章,實(shí)現(xiàn)諸多遞歸算法,進(jìn)一步理解遞歸的奧妙。...
- 6-1 為什么要研究樹結(jié)構(gòu)
6-2 二分搜索樹基礎(chǔ)
6-3 向二分搜索樹中添加元素
6-4 改進(jìn)添加操作:深入理解遞歸終止條件
6-5 二分搜索樹的查詢操作
6-6 二分搜索樹的前序遍歷
6-7 二分搜索樹的中序遍歷和后序遍歷
6-8 深入理解二分搜索樹的前中后序遍歷
6-9 二分搜索樹前序遍歷的非遞歸實(shí)現(xiàn)
6-10 二分搜索樹的層序遍歷
6-11 刪除二分搜索樹的最大元素和最小元素
6-12 刪除二分搜索樹的任意元素
6-13 更多二分搜索樹相關(guān)話題
第7章 集合和映射
在這一章,我們將綜合之前學(xué)習(xí)的數(shù)組,鏈表和二分搜索樹,探索更加高層的數(shù)據(jù)結(jié)構(gòu)應(yīng)用:集合(Set)和映射(Map)。通過這一章的學(xué)習(xí),我們將對二分搜索樹的復(fù)雜度分析,有更加感性的認(rèn)識,同時看到二分搜索樹的巨大優(yōu)勢,以及相應(yīng)的局限性。...
- 7-1 集合基礎(chǔ)和基于二分搜索樹的集合實(shí)現(xiàn)
7-2 基于鏈表的集合實(shí)現(xiàn)
7-3 集合類的復(fù)雜度分析
7-4 _Leetcode中的集合問題和更多集合相關(guān)問題
7-5 映射基礎(chǔ)
7-6 基于鏈表的映射實(shí)現(xiàn)
7-7 基于二分搜索樹的映射實(shí)現(xiàn)
7-8 映射的復(fù)雜度分析和更多映射相關(guān)問題
7-9 Leetcode上更多集合和映射的問題
第8章 優(yōu)先隊(duì)列和堆
在這一章,我們將探索一種特殊的樹結(jié)構(gòu)——堆。學(xué)習(xí)完這一章,同學(xué)們將對堆的相關(guān)操作有深入的認(rèn)識,甚至達(dá)到白板編程的程度。同時,我們也將拓寬對隊(duì)列的認(rèn)識,理解什么是廣義隊(duì)列,什么是優(yōu)先隊(duì)列。
- 8-1 什么是優(yōu)先隊(duì)列
8-2 堆的基礎(chǔ)表示
8-3 向堆中添加元素和Sift Up
8-4 從堆中取出元素和Sift Down
8-5 Heapify 和 Replace
8-6 基于堆的優(yōu)先隊(duì)列
8-7 Leetcode上優(yōu)先隊(duì)列相關(guān)問題
8-8 Java中的PriorityQueue
8-9 和堆相關(guān)的更多話題和廣義隊(duì)列
第9章 線段樹
線段樹是一種特殊的樹結(jié)構(gòu)。這種數(shù)據(jù)結(jié)構(gòu)主要用于解決“線段”或者是“區(qū)間”這種特殊的數(shù)據(jù),是算法競賽中的常客。在這一章,我們將從底層實(shí)現(xiàn)屬于我們自己的線段樹,完成線段樹的創(chuàng)建,查詢,更新三個操作,并且通過實(shí)際比較,看到線段樹解決“線段”相關(guān)問題的巨大優(yōu)勢。 ...
- 9-1 什么是線段樹
9-2 線段樹基礎(chǔ)表示
9-3 創(chuàng)建線段樹
9-4 線段樹中的區(qū)間查詢
9-5 Leetcode上線段樹相關(guān)的問題
9-6 線段樹中的更新操作
9-7 更多線段樹相關(guān)的話題
第10章 Trie
Trie將是我們學(xué)習(xí)的第一個,也是唯一一個多叉樹結(jié)構(gòu)。Trie用于高效的處理字符串相關(guān)的查詢問題,我們將看到,使用Trie,對字符串的查詢效率,將和字符串的多少無關(guān)!這樣的效率提升,將絕對震驚你的老板和同事!
- 10-1 什么是Trie字典樹
10-2 Trie字典樹基礎(chǔ)
10-3 Trie字典樹的查詢
10-4 Trie字典樹的前綴查詢
10-5 Trie字典樹和簡單的模式匹配
10-6 Trie字典樹和字符串映射
10-7 更多和Trie字典樹相關(guān)的話題
10-8 基于哈希表或者數(shù)組的Trie
第11章 并查集
并查集是一種奇怪的樹結(jié)構(gòu)。在并查集中,不是父親指向孩子,而是孩子指向父親。這樣的一種奇怪結(jié)構(gòu),卻能出奇快的解決集合相關(guān)的合并和查詢問題。在這一章,我們將連續(xù)優(yōu)化我們的并查集,釋放出并查集的最大能量!
- 11-1 什么是并查集
11-2 Quick Find
11-3 Quick Union
11-4 基于size的優(yōu)化
11-5 基于rank的優(yōu)化
11-6 路徑壓縮
11-7 更多和并查集相關(guān)的話題
第12章 AVL
我們在這一章將學(xué)習(xí)最為經(jīng)典的平衡二叉樹:AVL樹。我們將深入理解AVL樹中的旋轉(zhuǎn)操作。最后,我們也將看到,使用我們自己實(shí)現(xiàn)的AVL樹,在極端情況下,相較普通的二分搜索樹,性能巨大的提升。
- 12-1 平衡樹和AVL
12-2 計(jì)算節(jié)點(diǎn)的高度和平衡因子
12-3 檢查二分搜索樹性質(zhì)和平衡性
12-4 旋轉(zhuǎn)操作的基本原理
12-5 左旋轉(zhuǎn)和右旋轉(zhuǎn)的實(shí)現(xiàn)
12-6 LR 和 RL
12-7 從AVL樹中刪除元素
12-8 基于AVL樹的集合和映射
第13章 紅黑樹
沒有紅黑樹,可能就沒有數(shù)據(jù)庫到今天的發(fā)展。紅黑樹更是所有語言中樹結(jié)構(gòu)的首選底層實(shí)現(xiàn)。在這一章,我們將從2-3樹入手,帶領(lǐng)大家理解2-3樹和紅黑樹的等價性,進(jìn)而深入理解紅黑樹的各項(xiàng)操作。大家將看到,紅黑樹雖然復(fù)雜,但有規(guī)律的去理解,也能輕松拿下!...
- 13-1 紅黑樹與2-3樹
13-2 2-3樹的絕對平衡性
13-3 紅黑樹與2-3樹的等價性
13-4 紅黑樹的基本性質(zhì)和復(fù)雜度分析
13-5 保持根節(jié)點(diǎn)為黑色和左旋轉(zhuǎn)
13-6 顏色翻轉(zhuǎn)和右旋轉(zhuǎn)
13-7 紅黑樹中添加新元素
13-8 紅黑樹的性能測試
13-9 更多和紅黑樹相關(guān)的話題
13-10 對于紅黑樹,任何不平衡都會在三次旋轉(zhuǎn)內(nèi)解決?
第14章 哈希表
在數(shù)據(jù)結(jié)構(gòu)的世界里,哈希表可謂影響深遠(yuǎn)。哈希的應(yīng)用早就遠(yuǎn)遠(yuǎn)超越了數(shù)據(jù)存儲,在安全領(lǐng)域發(fā)揮著重要的作用。就連”區(qū)塊鏈“這種魔法黑科技,都離不開哈希的影子。在這一章,我們將具體的看一看,到底什么是哈希表,哈希表比起之前學(xué)習(xí)的數(shù)據(jù)結(jié)構(gòu),到底有怎樣的優(yōu)勢。...
- 14-1 哈希表基礎(chǔ)
14-2 哈希函數(shù)的設(shè)計(jì)
14-3 Java中的 hashCode 方法
14-4 鏈地址法 Separate Chaining
14-5 實(shí)現(xiàn)屬于我們自己的哈希表
14-6 哈希表的動態(tài)空間處理與復(fù)雜度分析。
14-7 哈希表更復(fù)雜的動態(tài)空間處理方法
14-8 更多哈希沖突的處理方法
|