原创 C++之 智能指針

智能指針引入RAII1. auto_ptr底層原理2. unique_ptr底層原理3. shared_ptr底層原理shared_ptr的線程安全shared_ptr的循環引用4. weak_ptrC++11與boost庫智能指

原创 C++實現簡單的 並查集

#include <iostream> #include <vector> using namespace std; //並查集 class UnionFindSet{ public: UnionFindSet(s

原创 C++之 強制類型轉換(static_cast、reinterpret_cast、const_cast、dynamic_cast)

類型轉換引入static_castreinterpret_castconst_castdynamic_cast模擬實現explicit關鍵字強轉的必要性RTTI:運行時類型識別 引入 類型轉換這個概念在許多編程語言中都有涉及,比

原创 Dynamic Programming -- 動態規劃

動態規劃定義特點本質樣例Fibonacci變態青蛙跳臺階(Climbing Stairs)連續子數組最大和字符串分割(Word Break) 定義 動態規劃簡稱DP問題,是分治思想的延伸,通俗一點來說就是大事化小,小事化無的藝術

原创 [C++ ] 24點遊戲算法

目錄例題描述解題思路代碼實現 例題描述 問題描述:給出4個1-10的數字,通過加減乘除,得到數字爲24就算勝利 輸入描述: 輸入4個int整數(數字允許重複,但每個數字僅允許使用一次,測試用例保證無異常數字) 輸出描述:

原创 C++之 模板(下)模板的特化、類型萃取、分離編譯

模板非類型模板參數類模板的特化函數模板特化類模板特化全特化偏特化類型萃取模板的分離編譯小結 在上篇博客中我們簡單講了一下兩大部分:函數模板與類模板,本篇博客我們討論一下它的邊緣知識~ 非類型模板參數 模板參數分爲:類型形參與非類

原创 [C++] B樹的簡單實現

template<class K,size_t M = 1024> struct BTreeNode{ K _key[M]; BTreeNode<K,M>* _sub[M+1]; //多給一個方便分裂 BTree

原创 [C++] STL快速一覽

STL什麼是STL?STL版本STL六大組件容器算法迭代器適配器仿函數空間配置器STL的缺陷小結 什麼是STL? STL(standard template libaray-標準模板庫):是C++標準庫的重要組成部分,不僅是一個

原创 C++之異常

異常引入C++異常概念使用方法異常的拋出和捕獲異常的重新拋出異常安全異常規範自定義異常體系C++標準庫的異常體系C++異常的優缺點優點缺點總結 引入 討論C++的異常,首先回顧一下C語言傳統的錯誤處理方式~ 終止程序,如ass

原创 C++實現簡單的 圖

#include <iostream> #include <vector> #include <string> #include <queue> #include <assert.h> using namespace std;

原创 C++ 之 list

list特性迭代器失效問題模擬實現list與vector的對比 特性 list是可以在常數範圍內在任意位置進行插入和刪除的序列式容器,並且該容器可以前後雙向迭代。 list的底層是雙向鏈表結構,雙向鏈表中每個元素存儲在互不相關

原创 C++ 之 vector容器

vector特性迭代器失效問題源碼剖析模擬實現vector與list的對比 特性 vector是表示可變大小數組的序列容器。 就像數組一樣,vector也採用的連續存儲空間來存儲元素,說明可以採用下標對vector的元素進行訪

原创 【匯頂科技筆試題】C++模擬實現Base64算法

什麼是Base64算法? 例如輸入“Man”: 轉化成ASCII字符爲77,97,110 轉化爲二進制爲010011010110000101101110 再每6個比特位一組,轉化爲4個十進制數字19 22 5 46 轉化爲對

原创 [C++] 單例模式:餓漢、懶漢demo

單例模式設計模式單例模式餓漢模式懶漢模式 設計模式 設計模式(Design Pattern)是一套被反覆使用、多數人知曉的、經過分類的、代碼設計經驗的總結。早期有23種設計模式。 爲什麼會產生設計模式呢? 就像人類歷史發

原创 [C++] 海量數據專講:抖音、快手每日幾億用戶活躍數據如何處理?(位圖 與 布隆過濾器)

哈希小引位圖實現一個位圖類應用布隆過濾器概念布隆過濾器的插入布隆過濾器的查找布隆過濾器的刪除優點缺陷海量問題擴展 小引 本篇所講的位圖與布隆過濾器,其實都是哈希表的具體應用~ 這兩個結構對於處理海量數據都有很好的功效! 區別: