原创 C++ map、set用法總結

C++容器之map、set  C++的標準模板庫(Standard Template Library,簡稱STL)是一個容器和算法的類庫,容器往往包含同一類型的數據,STL中比較常用的容器是vector,set,和map,比較常用的算法有

原创 理解數據結構——數據結構緒論總結

由於關於數據結構的概念和知識點過於繁亂,所以我今天就將其理了理,然後概括了一下本章我認爲較重要的一些。 我們都知道計算機主要用於數值計算,而我們的數據結構主要研究非數值計算問題(大多爲生活中遇到的問題)。 上圖就是它們的基本關係,關於其

原创 ## 《通過預處理數據的方法降低程序時間複雜度》

## 《通過預處理數據的方法降低程序時間複雜度》 簡單點說,就是如何儘量避免**超時**問題。 爲了通俗點,下面舉兩個例子:   首先呢,*素數判定*是一道經典例題   簡化版的素數判定大概就是判斷在x,y範圍內(-39<=x<y<=50

原创 樹——樹和二叉樹的相關概念

樹是一種非線性結構。 目錄 樹 引入 定義 樹的其他表示方式 樹的基本術語 樹結構和線性結構的比較 二叉樹 引入 定義 特點 特別注意 二叉樹的基本形態 兩種特殊形式的二叉樹 滿二叉樹 完全二叉樹 樹和二叉樹的抽象類型定義 樹 引入:

原创 樹——二叉樹的遍歷、代碼實現以及線索二叉樹

目錄   遍歷二叉樹 定義 遍歷方法 遍歷算法描述 由二叉樹得到遍歷序列 先序遍歷二叉樹的操作 中序遍歷二叉樹的操作 後序遍歷二叉樹的操作 由遍歷序列確定二叉樹 已知先序序列和中序序列求二叉樹 已知後序序列和中序序列求二叉樹 遍歷的算法實

原创 排序算法 大號 總結

排序算法種類繁多,我也是在算法的世界裏暈頭轉向,今天,不能再當小迷糊了。。 目錄 一.交換排序 冒泡排序 雞尾酒排序 快速排序 二.插入排序 直接插入排序 鏈表插入排序 折半插入排序 希爾插入排序 三.選擇排序 直接選擇排序 錦標賽排序

原创 圖——圖的存儲結構之鄰接矩陣、鄰接表,十字鏈表,鄰接多重表

圖的邏輯結構:多對多。 圖的存儲結構: 目錄 數組表示法(鄰接矩陣) 無向圖的鄰接矩陣 特點 有向圖的鄰接矩陣 特點 網(即有權圖)的鄰接矩陣 用鄰接矩陣來建立無向網 定義 算法思想 算法 示例代碼: 鄰接矩陣的優缺點 優點 缺點 鏈式存

原创 圖——圖的遍歷之DFS(深度優先搜索)、BFS(廣度優先搜素)

圖的遍歷是圖的基本運算。  目錄 遍歷 定義 方法(避免重複訪問) 遍歷兩大方法 深度優先搜索遍歷 連通圖的遍歷 非連通圖的遍歷 無向圖的深度遍歷 算法 示例代碼 廣度優先搜索遍歷 DFS和BFS的比較 遍歷 定義: 從已給的連通圖中某一

原创 圖——基本概念和類型定義

圖是一種非線性結構。 目錄 圖的基本概念: 引入 定義 相關術語: 有向圖 無向圖 完全圖 稀疏圖 稠密圖 權 網 鄰接 關聯(依附) 頂點的度 有向樹 路徑 路徑長度 迴路(環) 簡單路徑 簡單迴路(簡單環) 連通圖 強連通圖 子圖 連

原创 樹——哈夫曼樹的概念及其應用

目錄   哈夫曼概念 引入 相關概念 舉例 基本概念 特點 哈夫曼樹的構造算法 1.哈夫曼算法 舉例 2.哈夫曼樹算法實現: 舉例 實現 哈夫曼典型應用—哈夫曼編碼 思想 舉例 產生的兩大問題 算法實現 文件的編碼和解碼 編碼 解碼 哈夫

原创 樹——樹的結構、遍歷以及樹和森林,二叉樹的相互轉化

目錄   樹的存儲結構 雙親表示法 孩子鏈表 特點 改進 孩子兄弟表示法 舉例 樹與二叉樹的轉換 簡化 樹—>二叉樹 二叉樹—>樹 森林和二叉樹的轉換 森林—>二叉樹 舉例 二叉樹—>森林 舉例 樹和森林的遍歷 樹的遍歷(三種方式) 森林

原创 如何使用scanf輸入帶空格的字符串

學過字符串,我們都知道當輸入一串帶空格的字符 (通俗的說,就是英語中由一個個單詞組成的一句話)時,舉個例子,比如my name is aeiou 如果你用scanf直接輸入的話, 像這樣 scanf("%s",str); 結果

原创 C++ vector、list用法總結

常用容器之二—— vector 和 list 。 目錄 vector(向量): 優點 缺點  resize() 和 reserve() 的區別 1. resize(n)函數: 2. reserve(n)函數: 區別: 初始化 訪問  賦值

原创 學會線性表,一篇就夠了

線性表是最常用最典型的線性結構。 簡易目錄: 線性表:    邏輯特徵    線性表的類型定義    存儲結構          順序存儲表示              元素存儲位置的計算              順序表的基本操作實現

原创 C++ string類總結

我們以前處理字符串都是用char*,而當學了string之後,我們會果斷使用這個來處理字符串,因爲這個是真的很簡便啦! 目錄 string類的優點: 基礎篇: 聲明一個string字符串(代碼演示) 生成一個空字符串 爲字符串賦初值 用C