原创 C++ STL 之 map

map 是“關鍵字——值”對的集合。即 map<index, value> 其中 index 和 value 可以是各種類型,如 int, char, string,甚至是 STL 容器對象。 map 中的元素默認按 index 的增

原创 C++ STL 之 multimap

閱讀此篇前若有需要請先參看 C++ STL 容器 map 的介紹。 map 中不允許存在相同的元素,而 multimap 允許。這一設計上改變也帶來一些使用上的不同。 訪問 multimap 中的元素 由於 multimap 中允

原创 ElasticSearch與Kibana簡介及使用入門

Elasticsearch一款基於Apache Lucene™開源搜索引擎,其核心是迄今爲止最先進、性能最好的、功能最全的搜索引擎庫Lucene。Elasticsearch使用簡單,具有非常強大的全文搜索功能: 分佈式的實時文件

原创 C++ 可調用對象

在使用一些基於範圍的模板函數時(如 sort()、all_of()、find_if() 等),常常需要我們傳入一個可調用對象,以指明我們需要對範圍中的每個元素進行怎樣的處理。可調用對象可以是函數、函數指針、lambda表達式、bi

原创 C++ 讀取一行輸入到數組

#include<iostream> #include<string> #include<sstream> #include<vector> using namespace std; int main() { string lin

原创 C++ STL 之 set

set 是數學中“集合”概念的實現,故 set 中不會存在任意兩個相同的元素。 定義 set<int> set_1 初始化 由於 set 中不允許有重複的元素,故 set 對象只接受列表初始化(C11 標準支持),如 set<int>

原创 C++ STL 之 heap

C++ 中的 heap 並不是一個單獨的 STL 容器,而是基於 vector 的一系列算法。需要引入頭文件 #include <algorithm> 構造堆 使用 make_heap(beg, end)將迭代器範圍 [beg,

原创 C++ STL 之 deque

deque 是 C++ 對數據結構雙端隊列的實現。要使用 deque,請在程序頭添加: #include <deque> using name space std; deque 對象的定義與初始化 deque<int> dq;

原创 二叉樹的非遞歸遍歷

二叉樹的遍歷有三種經典方式:前序遍歷、中序遍歷、後序遍歷。 遞歸遍歷 遞歸的寫法非常簡單: 前序遍歷 void preorder_traverse(tree_node* root) { if (root == nullpt

原创 C++ STL 之 string

string 是 C++ 對數據結構字符動態數組的實現。要使用 string,請在程序頭添加: #include <string> using name space std; string 對象的定義與初始化 string<int>

原创 Linux 文件權限

由於在linux中的每個用戶必須屬於一個組,相應的每個文件也就有了所有者、所在組、其它組的概念。 所有者:一般爲文件的創建者 文件所在組:所有者所在的組 其他組:不是所有者,不屬於文件所在組的其他用戶均屬於此文件的其他組。   文件權限

原创 C++ STL 容器 multimap

閱讀此篇前若有需要請先參看 C++ STL 容器 map 的介紹。 map 中不允許存在相同的元素,而 multimap 允許。這一設計上改變也帶來一些使用上的不同。 訪問 multimap 中的元素 由於 multimap 中允許存

原创 C++ STL 容器之 deque

deque 是 C++ 對數據結構雙端隊列的實現。要使用 deque,請在程序頭添加: #include <deque> using name space std; deque 對象的定義與初始化 deque<int> dq; //

原创 C++ STL 之 heap詳解

C++ 中的 heap 並不是一個單獨的 STL 容器,而是基於 vector 的一系列算法。需要引入頭文件 #include <algorithm> 構造堆 使用 make_heap(beg, end)將迭代器範圍 [beg, en

原创 可調用對象

在使用一些基於範圍的模板函數時(如 sort()、all_of()、find_if() 等),常常需要我們傳入一個可調用對象,以指明我們需要對範圍中的每個元素進行怎樣的處理。可調用對象可以是函數、函數指針、lambda表達式、bind