原创 leetcode412+vector賦值+非靜態成員引用必須與特定對象相對+vector的輸出+operator
1、大致有以下幾種方法實現用於把一個vector賦值給另一個vector: 方法1: 1 vector<int > v1(v2);//聲明 方法2:使用swap進行賦值: 1 vector<int > v1();v1.swa
原创 Pentagonal數列問題——2.2
問題:練習2.2pentagonal數列的求值公式是P(n)=n(3n-1)/2,藉此產生1,5,12,22,35等元素值。試定義一個函數,利用上述公式,將產生的元素放到用戶傳入的vector中,元素個數由用戶指定。請檢查元素個數
原创 win7無法安裝Microsoft .NET Framework 4.5\4.0
在安裝一些軟件的時候,要求安裝環境下必須首先安裝有Microsoft .NET Framework 4.5\4.0,可是下載了安裝包卻怎麼也安裝不了,安裝到一定進度就失敗了,反覆安裝重啓,都沒有成功,最後終於找到了一套完整的
原创 VS2012旗艦版下載地址和安裝密鑰
http://wenku.baidu.com/link?url=OoUkmRtG42O2_2I9D4NLFkk2tkVcu2PZxBDcTQPPMR1d6UiP_9Ul2NWm5vJ1l1xNX70rvr9eaCYZ9v600W-4BwU
原创 引用和指針,查C++primer這本書直接查後面,像英語字典一樣的方法,首字母。
引用: essential C++ P215 bool pentagonal_elem(int pos,int &seq) int main() { pentagonal_elem(8,elem) } 這裏的&就是應用,而不是求地址,el
原创 二維向量
與數組相同, 向量也可以增加維數, 例如聲明一個m*n大小的二維向量方式可以像如下形式: vector< vector<int> > b(10, vector<int>(5)); //創建一個10*5的int型二維向量
原创 遞歸與迭代
遞歸和迭代的區別 遞歸就是不斷調用自身,就是A調用A的過程。遞歸會不斷使用棧來存過程,佔用的空間很大。很容易造成堆棧溢出的情況,改進可以使用尾遞歸的形式。遞歸有兩個過程: 1)遞推; 2)迴歸。 對於1+2+3+
原创 二分查找套路
進行二分查找有四個步驟: 第一步:while(start+1<end) //之所以需要這麼寫,是可能在後面使用到這兩個位置,比如leetcode上需要找11223344,裏面的2元素,start和end就可以返回這兩個位置。
原创 爲什麼判斷 std::vector 是否爲空時,用 if(0==vec.size()) 提示效率低,但用 if (vec.empty()) 正常?
爲什麼判斷 std::vector 是否爲空時,用 if(0==vec.size()) 提示效率低,但用 if (vec.empty()) 正常?修改 編譯器錯誤:Possible inefficient checking for
原创 全局和局部初始化
內置內型的對象,如果定義在file scope之內,必定被初始化爲0,但是如果他們被定義在local scope之內,那麼除非程序員指定其初值,否則不會被初始化。 在函數內必須初始化,否則會出錯。 #include<iostream>
原创 防衛式聲明
標準格式:在頭文件中寫: #ifndef -XXX- #define -XXX- ....... #endif 通過閱讀 GeekBand c++學習筆記——防衛式聲明的背後,發現編譯器對頭文件進行了以下預處理: 編譯器將處理
原创 類內初始化以及類中private注意事項
prime P270&&essential P117 靜態成員不應該在類的內部初始化,然而,我們可以爲靜態成員提供const整數類型的的類內初始化,不過要求靜態成員必須是constexpr,初始值必須是常量表達式。 類的private:
原创 stack棧的用法
#include<vector> #include<iostream> #include<string> #include<stack> using namespace std; int main() { stack<int> s;
原创 C++中string和char的區別以及直接初始化和拷貝初始化
string和char的區別 ‘\0’是c/c++語言中的字符串結束符,在ASCII字符集中對應空字符NULL。 使用string類,必須要在頭文件寫明#include<string>,使用string會在字符串的末尾自動加入一個\0
原创 leetcode371:Sum of Two Integers
Question:Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -. Example: Giv