原创 C++容器篇----map的使用方法

map的構造和賦值 #include<iostream> #include<map> using namespace std; //map容器 構造和賦值 void printMap(map<int, int>& m) { fo

原创 指針專題---------初探指針(一)

一、什麼是指針 說起指針,大家可能或多或少知道一些,比如我們定義一個整型變量,再把這個整型變量的地址賦給一個指針,我們就能通過指針來獲取到整型變量的值。 上面這就是我最一開始接觸指針的時候,來理解指針的方式。 新的理解: 我們可以找到一

原创 用C++類實現雙向鏈表的功能

實現的功能 無參構造和有參構造,其中無參構造只創建了一個頭結點。有參構造中實現了在定義單鏈表的對象時,可以指定出單鏈表的長度,並且輸入對應單鏈表每個結點的值。 遍歷函數,通過這個遍歷,可以打印出單鏈表對象中所有結點的值(不包括頭結點)。

原创 用C++類實現單鏈表的基本功能(附帶開闢內存空間詳解)

實現的功能 無參構造和有參構造,其中無參構造只創建了一個頭結點。有參構造中實現了在定義單鏈表的對象時,可以指定出單鏈表的長度,並且輸入對應單鏈表每個結點的值。 遍歷函數,通過這個遍歷,可以打印出單鏈表對象中所有結點的值(不包括頭結點)。

原创 C++菜鳥教程---二叉樹的創建以及三種遍歷----針對指針內存空間詳解

引言         說起二叉樹,大部分爲可能都或多或少知道一些他的性質,但如果讓你用代碼創建一個二叉樹或遍歷某個二叉樹可能就變得困難了一些,下面就根據這兩個問題進行展開,首先提問一個問題? 如果你想創建一顆二叉樹,那這棵二叉樹各個結點

原创 通俗易懂且最快的理解KMP算法---詳解

引言   首先問幾個問題? 爲什麼要有KMP算法? 相對於樸素算法的過程,KMP算法的過程有哪些不同? 什麼是字符串的前綴和後綴,它到底有啥用? KMP算法中的next數組是什麼?爲什麼要用next數組? next數組的求解過程?怎樣用

原创 C++容器篇-----deque的使用方法

deque的構造函數 #include<iostream> #include<deque> using namespace std; void printDeque(const deque<int>& d) { for (dequ

原创 C++的內存分區模型--------代碼區-------全局區--------棧區----------堆區

一、內存分區模型      C++在程序執行時,將內存大方向分爲四個區域 代碼區:存放函數體的二進制代碼,由操作系統進行管理。 全局區:存放全局變量和靜態變量以及常量 棧    區:由編譯器自動分配釋放,存放函數的參數值、局部變量等 堆

原创 C++容器篇-----list的使用方法

list的構造函數 #include<iostream> #include<list> using namespace std; //list容器構造函數 void printList(const list<int>& l) {

原创 C++容器篇-----string的使用方法

string的構造函數 #include<iostream> #include<string> using namespace std; //string的構造函數 void test01() { string s1;//默認構造

原创 C++容器篇-----stack的使用方法

stack的常見接口 #include<iostream> #include<stack> using namespace std; //棧stack容器 void test01() { //特點符合先進後出的數據結構 stac