考研 C與數據結構代碼總結目錄頁

前言:2019考研,我考的專業課是數據結構(含C語言程序設計),在考研備考期間,初學數據結構,感覺也是很曲折。剛開始複習看着每道題只有關鍵代碼很頭疼,爲了保證自己的代碼有同樣的效果,不得不花很多時間去完善非重點部分的代碼來完整運行起來,暑假寫了挺多這種細枝末節的代碼,也記錄了一些放在我的Github上,不過沒有整理目錄,看着很亂,今天無意中看到了,所以特地抽出時間整理了一下目錄,希望對同樣備考的您有幫助,省下您一些寫程序框架的時間或者是給您一點啓發。備考匆忙,加上我是跨考,寫下的難免會有錯誤,希望大家發現了能給我指出,甚是感謝!如果您有時間,也可以對我的進行整理補充或者是開一個更專業的板塊,爲後面的學弟學妹們留點東西。

一、C

C的應用

  1. 不用棧實現單括號匹配
  2. 使用二級指針做矩陣加法
  3. 計算比賽前多少名的平均分
  4. 通過遞歸判斷給定序列是否是迴文序列
  5. 使用倒推法求解原始物體數目(猴子分桃問題)
  6. 求解一元一次方程
  7. 矩陣轉置
  8. 身份證校驗
  9. 漢諾塔
  10. 按某些規則計算前n項累加累乘的結果
  11. 歸併兩個非遞減數組保留重複項
  12. 求旋轉數組中最小值以及某個確定值位置
  13. 找升序序列的中位數
  14. 求兩遞增集合的交集
  15. 多種方法求最大子列和並輸出最大子列
  16. 八皇后問題
  17. 字符串—求全排列
  18. 字符串—空格替換
  19. 字符串—KMP算法
  20. 字符串—找單詞共同後綴串

位運算

  1. 位運算–判斷一個數是否是2的n次冪
  2. 位運算–判斷一個數的奇偶性
  3. 位運算–實現算數運算加減乘除
  4. 位運算–將整型數據按字節存入char型數組中
  5. 位運算–將無符號整型數轉換成十六進制存在char型數組中
  6. 位運算–找出數列中出現次數爲奇數的數
  7. 位運算–求一個數原碼對應的補碼
  8. 位運算–輸出長度爲n的二進制數中不包含101子串的總數目

二、數據結構

鏈表

PS.感覺放C那裏更和諧,爲了和後面銜接,放數據結構裏吧

  1. 單鏈表的基本操作
  2. 單鏈表插入排序
  3. 兩種不同的單鏈表逆序
  4. 雙向鏈表
  5. 雙向循環鏈表的基本操作
  6. 將兩個順序相反的鏈表歸併成一個有序鏈表
  7. 對鏈表中絕對值相同的節點去重
  8. 雙向循環鏈表非遞減排序
  9. 約瑟夫問題
  10. 魔術師發牌問題
  11. 十字鏈表存儲稀疏矩陣

  1. 靜態棧及基本操作
  2. 利用靜態棧實現數制轉換
  3. 動態棧及基本操作
  4. 共享棧構建及相關操作
  5. 棧的應用—括號匹配

隊列

PS.這個做過的題不是很多

  1. 隊列–鏈式循環隊列實現及其相關操作

  1. 靜態鏈式二叉樹的創建及各種遍歷方式
  2. 二叉樹層次遍歷
  3. 二叉樹非遞歸遍歷
  4. 動態創建二叉樹並遍歷輸出
  5. 動態輸入二叉樹並通過後序遍歷求深度
  6. 求二叉樹寬度
  7. 求二叉樹寬度2
  8. 線索化二叉樹
  9. 二叉排序樹
  10. 將數組中滿二叉樹的前序序列轉成後序序列
  11. 已知先序序列和中序序列還原二叉樹
  12. 根據給定的滿二叉樹序列構建二叉樹
  13. 已知前序中序或者是中序後序還原二叉樹完整版(遞歸+非遞歸)
  14. 判斷標準形式的二叉樹是否是堆
  15. 樹–尋找兩個節點最近的公共祖先
  16. 天勤第六章思考題1—輸出二叉樹根節點到每個葉子節點的路徑
  17. 天勤第六章綜合應用題1.10—對二叉樹進行所謂的雙序遍歷
  18. 天勤第六章綜合應用題1.11—設計中序線索二叉樹並找某些節點的信息
  19. 天勤第六章綜合應用題1.2—計算節點數
  20. 天勤第六章綜合應用題1.3—計算葉子節點數
  21. 天勤第六章綜合應用題1.4—藉助樹的右指針域將樹的葉子節點串成鏈表
  22. 天勤第六章綜合應用題1.5—輸出帶雙親域的樹的所有節點到根節點的路徑
  23. 天勤第六章綜合應用題1.7—求二叉樹中某個數所在的層
  24. 天勤第六章綜合應用題1.8—根據權值構造郝夫曼樹並計算帶權路徑長度

  1. 圖–使用鄰接矩陣創建圖並用多種方式遍歷
  2. 圖–使用鄰接表創建圖並用多種方式遍歷
  3. 圖–Prim(普里姆)算法
  4. 圖–Kruscal(克魯斯卡爾)算法
  5. 圖–最短路徑 Dijkstra(迪傑斯特拉)算法
  6. 圖–最短路徑 Floyd(弗洛伊德)算法
  7. 圖–拓撲排序算法
  8. 通過深度優先遍歷判斷有向圖是否有環
  9. 圖—求不帶權無向連通圖距頂點最遠的頂點
  10. 圖—判斷兩個頂點之間是否有路徑
  11. 圖–判斷無向圖G是否是一棵樹
  12. 圖–輸出圖中連續爲1的最大塊數
  13. 天勤第七章綜合應用題1.7—將圖的鄰接表改成鄰接矩陣
  14. 天勤第七章綜合應用題1.9—非遞歸DFS遍歷以鄰接表方式存儲的圖

排序

  1. 排序–常見的幾種排序方法及思想
  2. 排序–冒泡排序
  3. 排序–基於數組的直接插入排序
  4. 排序–基於鏈表的直接插入排序
  5. 排序–折半插入排序
  6. 排序–希爾排序
  7. 排序–簡單選擇排序
  8. 排序–簡單選擇排序遞歸版
  9. 排序–快速排序
  10. 排序–二路歸併排序
  11. 排序–堆排序

以上部分的代碼來自天勤數據結構和1800習題集,剩下的是我在其他地方看到記錄的,大家可以根據自身需要,擇取您薄弱的地方重點做一做,爭取不留短板,不留遺憾。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章