原创 c++迭代器詳解(一):back_inserter, front_inserter,inserter

1.stl迭代器之配接器( Iterator Adapters) 迭代器(Iterators)是一個純抽象的概念:任何東西,只要其行爲類似迭代器,它就是一個迭代器.也就是說,只有具備有迭代器的四種基本操作

原创 c++stl之逆向迭代器 Reverse Iterators

1.什麼是逆向迭代器?逆向迭代器是一個迭代器,是一個類,擁有迭代器的4種基本操作:*取值,++遞增,=賦值,== ,!=比較。我們知道stl就是把數據和算法進行分離,數據存儲在容器中,算法通過迭代器對容器

原创 單鏈表 之c代碼

我們知道數據結構就是數據及其相互關係,包括邏輯結構和物理結構。單鏈表的邏輯結構是一種一對一的線性關係,物理結構是利用節點把數據結合起來,在計算機中體現這種一對一的數據關係。單鏈表節點包括包含數據本身信息的

原创 Makefile 沒有規則創建目標“main.o”需要的目標“main.c”

問題:Makefile 沒有規則創建目標“main.o”需要的目標“main.c” make 命令假設在Makefile文件中的第一個目標“myapp”是想創建的目標文件。然後它會檢查其它的依賴關係,並確定需要一個有一個名爲“ma

原创 棧的C語言源碼

1.導言(爲什麼要用棧?)通常來說,決定採用何種方式來存儲數據是非常重要的,這樣便於對數據檢索時,數據會自動按照某種規定的順序給出。棧和隊列是檢索數據的一種常用的數據結構。棧和隊列是兩種非常重要的數據結構

原创 Makefile 的 遺漏分隔符錯誤信息

問題:Makefile 的 遺漏分隔符錯誤信息 經過調查,發現是這樣的: 2,4,6,8行是具體的編譯動作。開頭不可以有空格,留白是由 按tab鍵形成的。 去掉空格,改爲tab鍵後,再執行make命令,成功

原创 淺析c++迭代器之multimap

關聯式容器 1.什麼是關聯式容器關聯式容器依據特定的排序法則,自動對容器內的數據元素進行排序。排序的準則是以函數的形式呈現出來的,用來比較數據元素的值(value)或者鍵(key)。在默認的缺省狀態下是以

原创 淺析c++ stl 之deque

1.stl容器之deque在stl中,容器是用來存儲數據元素集合的一種數據結構。我們知道分析數據結構必須從兩方面 入手:(1)邏輯結構(2)物理結構(存儲結構) 2.邏輯結構:deque “double

原创 c++ stl之關聯式容器 set

關聯式容器 1.什麼是關聯式容器 關聯式容器依據特定的排序法則,自動對容器內的數據元素進行排序。排序的準則是以函數的形式呈現出來的,用來比較數據元素的值(value)或者鍵(key)。在默認的缺省狀態下是以 operator<進行比較,你

原创 c++ stl 之迭代器淺析

1.c++ stl之迭代器(iterator)迭代器是一個可遍歷stl容器內全部或者部分元素的一個類(注意這裏是類)。一個迭代器用來指出容器中的一個特定位置,也就是指出數據元素在容器內的位置。 2.所有

原创 c語言之進制轉換(棧實現)

從上兩篇博客中我們可以知道,棧具有後進先出的特性,而進制轉換的打印輸出剛好與計算過程相反,滿足棧這後進先出的特性, 所以可以用棧很快的實現進制轉換,下面是用棧實現進制轉換的c函數void conversi

原创 c++之 字符串 中的單詞逆序輸出

題目:從標準輸入裝置取得一個個英文單詞,然後將其中的各個字符(字母)逆序輸出!單詞和單詞之間以一般空格符(換行符 newline , 空格符space 或定位符tab)或者逗號,句號,分號分隔開來。 數據結構:字符串邏輯思路:(1)輸入

原创 c++ stl 之vector淺析

1.瞭解stl中的vectorvector是序列式容器,每個元素在容器中的位置和插入的順序有關。 2.數據結構: vector中元素的邏輯結構:vector中的元素是一對一的線性關係vector中元素的存

原创 棧(stack)

1.什麼是棧?棧(stack)是一種只能在表的一端進行插入和刪除的線性表。是一種一對一的線性關係。因爲只能在棧頂進行插入和刪除.這種結構特性決定了棧只能的性質:後進先出(Last In First Out

原创 C語言之 進制轉換(循環)

#include<iostream> using namespace std; void conversion( unsigned N ,const int d,int mod[100],int *pcount); int main(v