原创 C++STL之hash_table,hash_map與hash_multimap,hash_set與hash_multiset的使用

學習別人的哈,特此聲明。 hash_table是STL中hash_map 和 hash_set 的內部數據結構,hash_table的插入 / 刪除 / 查找的時間複雜度都爲O(1), 是查找速度最快的一種數據結構,但是hash_ta

原创 C++STL之queue的使用

參考別人的哈,特此聲明。 /* queue單向隊列與棧有點類似,一個是在同一端存取數據,另一個是在一端存入數據,另一端取出數據。 單向隊列中的數據是先進先出(First In First Out, FIFO)。在STL中,單向隊列也是以別

原创 C++STL之vector的使用

/*vector類稱作向量類,它實現了動態數組,用於元素數量變化的對象數組。 像數組一樣,vector類也用從0開始的下標表示元素的位置;但和數組不同的是, 當vector對象創建後,數組的元素個數會隨着vector對象元素個數的增大和縮

原创 C++STL之deque的使用

參考別人的哈,特此聲明。 #include <deque> /* deque雙向隊列是一種雙向開口的連續線性空間,可以高效的在頭尾兩端插入和刪除元素,deque在接口上和vector非常相似 deque的實現比較複雜,內部會維護一個ma

原创 C++STL之優先隊列的使用

/* priority_queue 優先級隊列是一個擁有權值概念的單向隊列queue,在這個隊列中, 所有元素是按優先級排列的(也可以認爲queue是個按進入隊列的先後做爲優先級的 優先級隊列——先進入隊列的元素優先權要高於後進入隊列的元

原创 C++STL的set與multiset的使用

c++ stl集合set介紹 c++ stl集合(Set)是一種包含已排序對象的關聯容器。 set / multiset會根據待定的排序準則,自動將元素排序。兩者不同在於前者不允許元素重複,而後者允許。 c++ stl集合set介

原创 C++STL之stack的使用

/* 轉載自別人的,特此聲明。 棧(statck)這種數據結構在計算機中是相當出名的。棧中的數據是先進後出的(First In Last Out, FILO)。 棧只有一個出口,允許新增元素(只能在棧頂上增加)、移出元素(只能移出棧

原创 STL系列

  STL系列之一 deque雙向隊列 分類: STL 他山之石 2011-11-08 09:52 7949人閱讀 評論(8) 收藏 舉報 deque雙向隊列是一種雙向開口的連續線性空間,可以高效的在頭尾

原创 C++string類常用的操作函數

#include <iostream> #include <string>//必須包含該C++頭文件 using namespace std; int main() { //string對象的初始化,也就是構造函數與析構函數方

原创 八大排序之堆排序

#include <iostream> using namespace std; int heapSize = 0; void HeapSort(int array[], int length); void BuildMaxHeap(

原创 數據結構之雙向鏈表(C++語言描述)

#include <iostream> using namespace std; class ListNode { public: int m_nValue; ListNode* m_pLeft; ListNo

原创 數據結構之單向鏈表(C++語言描述)

該文件是整個源文件,包括單向鏈表節點的定義,各種操作函數,main()測試用例。 #include <iostream> using namespace std; struct ListNode //用class時需要加pu

原创 八大排序之插入排序

#include <iostream> using namespace std; template <class T> void InsertSort(T* numbers, const int length); int main(

原创 八大排序之選擇排序

#include <iostream> using namespace std; void SelectSort(int* numbers, const int length); int main() { int lengt

原创 八大排序之快速排序

#include <iostream> using namespace std; template <class T> void QuickSort(T* numbers, int low, int high); int main(