“資料結構基礎”系列網路課程主頁
前言
自從下決心要解決學生動手能力差的問題,開始了課程實踐資源的建設之旅;自迷上了翻轉課堂,所教課程的視訊,也就逐漸形成了體系。在為我自己的校內學生服務的同時,也希望能夠讓更多人有機會用到。
自全身心投入教學,收入、獎金的渠道也便收縮到了極致。接受CSDN學院商業運作的規則,將課程投放此處,一則創收一些,彌補付出數倍精力建設資源而只能喝大鍋飯中稀粥中的不平衡,二則因免費帶來的不珍惜也讓自己有些不快。課程定價大概等值於一張景區門票,或者一塊生日蛋糕,願者自行決定。
為天下IT學子服務的諾言不變,為大學生義務諮詢的IT學子成長指導專欄長期有效,個人郵箱([email protected]
惟恐有如我求學時家貧的學子,想用這些資源,因為開銷的緣故而放棄。在此給出另一個承諾:對於家貧的學子,你可以先行購課完成學習,學完之後給我寫封Email彙報學習情況,並提供學習記錄,我將為你返還購課費用(含CSDN學院收取的平臺服務費)。對於特別困難的同學,也可以提前聯絡,我可以為你提供需要的學習便利。
所有資源將在2015年12月建完,屆時也將會打包成“套餐”。祝所有食客吃得健康!(後記:套餐地址為連結,吃套餐更實惠。)
新增資源
為支援網路課程學員的學習,特公佈配套的自測題目。你可以在看完視訊之後,同步檢測自己的學習效果。自測題目獲取方法:到mosoteach.cn(藍墨雲班課),註冊賬號後,用邀請碼393626加入“資料結構基礎”網路課,在那裡可以看到自測題目。
當然,“上機實踐”仍然是非常重要的實踐資源。
課程資源
系列1: 資料結構和演算法
1. 關於資料結構課程(免費) [視訊]
2. 什麼是資料結構(免費) [視訊]
3. 資料的邏輯結構及型別(免費) [視訊]
4. 抽象資料型別(免費) [視訊]
5. 演算法及其描述(免費) [視訊]
6. 演算法複雜度概念(免費) [視訊]
7. 演算法分析例項(免費) [視訊]
8. 演算法與資料結構(免費) [視訊]
系列2:線性表
1. 導學(免費) [視訊]
2. 線性表的邏輯結構與基本運算(免費) [視訊]
3. 線性表的順序儲存結構 [視訊]
4. 建立線性表的實現(暨引數型別的討論) [視訊
5. 順序表基本運算的實現 [視訊]
6. 線性表順序儲存的應用 [視訊]
7. 實踐指導:用程式實踐演算法(免費) [視訊]
8.線性表的鏈式儲存 [視訊]
9. 建立單鏈表 [視訊]
10. 單鏈表基本操作的實現 [視訊]
11. 單鏈表應用舉例 [視訊]
12. 雙鏈表 [視訊]
13. 迴圈連結串列 [視訊]
14. 線性表的應用 [視訊]
15. 有序表 [視訊]
系列3:棧和佇列
1. “棧和佇列”導學(免費) [視訊]
2. 棧的定義(免費) [視訊]
3. 棧的順序儲存結構及其基本運算實現 [視訊]
4. 棧的鏈式儲存結構及其基本運算的實現 [視訊]
5. 棧的應用1-表示式求值 [視訊]
6. 棧的應用2-迷宮問題 [視訊]
7.佇列的定義(免費) [視訊]
8. 順序隊的儲存及基本操作 [視訊]
9. 環形佇列的儲存及基本操作 [視訊]
10. 佇列的鏈式儲存結構及其基本運算的實現 [視訊]
11. 佇列的應用-迷宮問題 [視訊]
12. 雙端佇列 [視訊]
系列4:串
- 串的基本概念及導學 [視訊]
11:09 [自測] - 串的順序儲存及其基本操作實現 [視訊]
26:09 [演算法庫] - 串的順序儲存應用 [視訊]
12:53 [例程] - 串的鏈式儲存及其基本操作實現 [視訊]
21:58 [演算法庫] [自測] - 串的模式匹配(Brute-Force演算法) [視訊]
16:15 [例程] - 串的模式匹配(KMP演算法) [視訊]
33:20 [例程] [自測]
上機實踐及參考:串
系列5:陣列與廣義表
- 陣列的基本概念與儲存結構 [視訊]
22:06 [自測] - 特殊矩陣的壓縮儲存 [視訊]
31:56 [例程] [自測] - 稀疏矩陣的三元組表示 [視訊]
26:41 [演算法庫] [自測] - 稀疏矩陣的十字連結串列表示 [視訊]
28:33 [例程] - 廣義表 [視訊]
13:58 [自測] - 廣義表的儲存結構及基本運算的實現 [視訊]
相關推薦
“資料結構基礎”系列網路課程主頁
前言 自從下決心要解決學生動手能力差的問題,開始了課程實踐資源的建設之旅;自迷上了翻轉課堂,所教課程的視訊,也就逐漸形成了體系。在為我自己的校內學生服務的同時,也希望能夠讓更多人有機會用到。 自全身心投入教學,收入、獎金的渠道也便收縮到了極致。接受C
【資料結構基礎】哈夫曼編碼/譯碼課程設計
#include<stdio.h> #include<stdlib.h> #include<string.h> #define N 20 typedef struct { char ch; int wei
野生前端的資料結構基礎練習(5)——雜湊
網上的相關教程非常多,基礎知識自行搜尋即可。 習題主要選自Orelly出版的《資料結構與演算法javascript描述》一書。 參考程式碼可見:https://github.com/dashnowords/blogs/tree/master/Structure/Hash 雜湊的基本知識
Coursera北大《資料結構基礎》之概論
刷書有點看不下去了,打算換課程試試。 Mooc上有一樣的內容,更喜歡Coursera。 本文基於Coursera北大課程《資料結構基礎》,所有文中非標註圖片均來自課件,侵刪 程式 = 資料結構 + 演算法 1.
資料結構基礎之線性表(下)
轉自:http://www.cnblogs.com/edisonchou/p/4614934.html 線性表(下) 在上一篇中,我們瞭解了單鏈表與雙鏈表,本次將單鏈表中終端結點的指標端由空指標改為指向頭結點,就使整個單鏈表形成一個環,這種頭尾相接的單鏈表稱為單迴圈連結串列
資料結構基礎之佇列
轉自:http://www.cnblogs.com/edisonchou/p/4620379.html 佇列 在日常生活中,佇列的例子比比皆是,例如在車展排隊買票,排在隊頭的處理完離開,後來的必須在隊尾排隊等候。在程式設計中,佇列也有著廣泛的應用,例如計算機的任務排程系統、
野生前端的資料結構基礎練習(6)——集合
網上的相關教程非常多,基礎知識自行搜尋即可。 習題主要選自Orelly出版的《資料結構與演算法javascript描述》一書。 參考程式碼可見:https://github.com/dashnowords/blogs/tree/master/Structure/Set [TOC] 集
資料結構基礎之圖(下):最短路徑
轉自:http://www.cnblogs.com/edisonchou/p/4691020.html 圖(下):最短路徑 圖的最重要的應用之一就是在交通運輸和通訊網路中尋找最短路徑。例如在交通網路中經常會遇到這樣的問題:兩地之間是否有公路可通;在有多條公路可通的情況下,哪
資料結構基礎之圖(中):最小生成樹演算法
轉自:http://www.cnblogs.com/edisonchou/p/4681602.html 圖(中):最小生成樹演算法 圖的“多對多”特性使得圖在結構設計和演算法實現上較為困難,這時就需要根據具體應用將圖轉換為不同的樹來簡化問題的求解。 一、生成樹與最小生成
資料結構基礎之圖(中):圖的遍歷演算法
轉自:http://www.cnblogs.com/edisonchou/p/4676876.html 圖(中):圖的遍歷演算法 上一篇我們瞭解了圖的基本概念、術語以及儲存結構,還對鄰接表結構進行了模擬實現。本篇我們來了解一下圖的遍歷,和樹的遍歷類似,從圖的某一頂點出發訪問
資料結構基礎之圖(上):圖的基本概念
轉自:http://www.cnblogs.com/edisonchou/p/4672188.html 圖(上):圖的基本概念 前面幾篇已經介紹了線性表和樹兩類資料結構,線性表中的元素是“一對一”的關係,樹中的元素是“一對多”的關係,本章所述的圖結構中的元素則是“多對多”的
資料結構基礎之排序
轉自:http://www.cnblogs.com/edisonchou/p/4713551.html 排序 排序(Sorting)是計算機內經常進行的一種操作,其目的是將一組“無序”的記錄序列調整為按關鍵字“有序”的記錄序列。如何進行排序,特別是高效率地進行排序時計算機工
資料結構基礎之查詢(下):雜湊表
轉自:http://www.cnblogs.com/edisonchou/p/4706253.html 查詢(下):雜湊表 雜湊(雜湊)技術既是一種儲存方法,也是一種查詢方法。然而它與線性表、樹、圖等結構不同的是,前面幾種結構,資料元素之間都存在某種邏輯關係,可以用連線圖示
資料結構基礎之查詢(上):樹表查詢
轉自:http://www.cnblogs.com/edisonchou/p/4700850.html 查詢(上):基本查詢與樹表查詢 只要你開啟電腦,就會涉及到查詢技術。如炒股軟體中查股票資訊、硬碟檔案中找照片、在光碟中搜DVD,甚至玩遊戲時在記憶體中查詢攻擊力、魅力值等
資料結構基礎及STL實現(複習)
目錄 動態陣列 棧 佇列 優先佇列 動態陣列 srand(time(0)); std::vector<int> qwq; for(int i = 1;i <= 10;++i) qwq.push_back(rand(
野生前端的資料結構基礎練習(7)——二叉樹
網上的相關教程非常多,基礎知識自行搜尋即可。 習題主要選自Orelly出版的《資料結構與演算法javascript描述》一書。 參考程式碼可見:https://github.com/dashnowords/blogs/tree/master/Structure/btree 一.二叉樹的
redis - 通俗易懂的Redis資料結構基礎教程
通俗易懂的Redis資料結構基礎教程 Redis有5個基本資料結構,string、list、hash、set和zset。它們是日常開發中使用頻率非常高應用最為廣泛的資料結構,把這5個數據結構都吃透了,你就掌握了Redis應用知識的一半了。 string 首先我們從
資料結構基礎知識點
宣告:本內容主要是複習《資料結構(C語言)--嚴蔚敏等老師編寫》的筆記 資料:對客觀事物的符號描述,在電腦科學中是指所有能輸入到計算機中並被計算機程式處理的符號的總稱。 資料元素:資料的基本單位,在計算機中通常作為一個整體進行考慮和處理。 資料項:一個數據元素有若干個資料項組成,且資料項
那些年,面試中常見的資料結構基礎和演算法題(下)
前言 這是 資料結構和演算法面試題系列的下半部分,這部分主要是演算法類 包括二分查詢、排序演算法、遞迴演算法、隨機演算法、揹包問題、數字問題等演算法相關內容。本系列完整程式碼在 github 建了個倉庫,所有程式碼都重新整理和做了一些基本的測試,程式碼倉庫地址在這裡: shishujuan/dsalg
資料結構基礎(一)陣列,矩陣
資料結構基礎(一) 有一個等式,資料結構+演算法=程式,說明了資料結構對於計算機程式設計的重要性。資料結構是指資料元素的集合(或資料物件)及元素間的相互關係和構造方法。資料物件中元素之間的相互關係稱為資料的邏輯結構,資料元素及元素之間關係的儲存形式稱為儲存結構(或物理結構)。 資料結構按