原创 【STL】棧適配器stack

STL中的棧stack是一個適配器,它的實現容器可以是deque, vector, 或者list, 默認是deque,只要支持push_back()和pop_back()的容器就可以。 構造函數 stack<T, C<T>> ; stac

原创 輕鬆搞定面試中的二叉樹題目

版權所有,轉載請註明出處,謝謝! http://blog.csdn.net/walkinginthewind/article/details/7518888 樹是一種比較重要的數據結構,尤其是二叉樹。二叉樹是一種特殊的樹,在二叉樹中每個

原创 輕鬆搞定面試中的鏈表題目

版權所有,轉載請註明出處,謝謝! http://blog.csdn.net/walkinginthewind/article/details/7393134 鏈表是最基本的數據結構,面試官也常常用鏈表來考察面試者的基本能力,而且鏈表相關

原创 C++ 11 複習要點

C++11在C++98基礎上增加了很多新的特性。本文來總結一下那些主要的特性,記住這些特性就可以了。 一、關鍵字和新語法 1.1 auto關鍵字 C++11以前,auto是用來表明變量是放在自動存儲區(棧區)的。C++11開始,廢棄了這個

原创 二叉樹的各種操作(面試必備)

https://www.61mon.com/index.php/archives/191/ 本篇針對面試中常見的二叉樹操作作個總結: (1):前序遍歷,中序遍歷,後序遍歷; (2):層次遍歷; (3):求樹的節點數; (4):求樹的葉子

原创 【C++複習】易錯的小問題

1. 數組初始化 數組初始化有很多坑,比如 int a [10];  這樣的話,10個元素的值都是沒有初始化的,在32位Windows上是-858993460,16進製表示是0xcccccccc之類的垃圾數據,棧中變量如果沒有初始化,值就

原创 【劍指offer】劍指offer 練習筆記

劍指offer練習 寫一個程序要注意: 1. 功能性測試(完成基本功能) 2. 邊界值測試(單獨處理邊界) 3. 負面測試(處理無效數據) 其餘的還有: 1. 變量命名規範化,可讀化  2. 釋放一個內存時,要記得把引用這塊內存的指針置爲

原创 二叉樹的各種計算題和性質

1. 普通二叉樹比如表達式樹 2. 二叉查找樹 BST (滿足左子樹所有節點小於根小於右子樹所有節點的二叉樹)     涉及到了BST的插入、刪除、查找問題。插入(建樹)和查找(前序、中序、後序遍歷)比較簡單。刪除操作需要考慮三個問題:

原创 【STL】queue隊列適配器

queue和stack一樣,也是STL中的適配器。任何支持push_back(), pop_front()的容器都可以支持,即deque雙端隊列, list雙向鏈表。默認是deque. 基本操作: push 入隊 pop 出隊 size

原创 C++ 變長參數

一個典型的過程是 int sum(char *msg, ...) {     va_list st;     va_start(st, msg);     int total = 0;     int tmp;     while((tm

原创 【STL】迭代器iterator和有關問題

迭代器的基本操作(即每種容器的迭代器都有的操作):  自增++  自減--  去引用*  1. vector::iterator vector的迭代器是雙向迭代器。 點贊 收藏 分享 文章舉報

原创 C++ 左值和右值,左值引用和右值引用

區分左值右值的真正說法是:能否用“取地址&”運算符獲得對象的內存地址。 臨時對象是右值,可以被右值引用或者常量左值引用來引用; 持久對象是左值,可以被左值引用或常量左值引用來引用; 對於臨時對象,它可以存儲於寄存器中,所以是沒辦法用“取地

原创 排序算法

1. 直接選擇排序 任何情況下的時間複雜度都是 O(n^2), 最差的一種排序,每次都必須遍歷玩整個子數組,選出最小的那個,空間複雜度爲O(1),無需額外空間。直接選擇排序的關鍵在於,每次從右側子數組中,選出最小的,放到子數組第一個,然後

原创 【STL】C++11新特性emplace操作

emplace操作是C++11新特性,新引入的的三個成員emlace_front、empace 和 emplace_back,這些操作構造而不是拷貝元素到容器中,這些操作分別對應push_front、insert 和push_back

原创 C++ 析構函數執行順序

通過 Student 類依次創建了3個對象,分別是 stu1、stu2、stu3,但它們對應的析構函數的執行順序卻是相反的,這是爲什麼呢?要搞清楚這個問題,首先要明白C++內存模型,也就是C++的代碼和數據在內存中是如何存儲的。在內存模型