演算法 使用vector簡單模擬大整數

2021-10-07 18:17:08 字數 1186 閱讀 5732

寫在讀前:

看了大佬們利用結構體與過載運算子寫的大整數類;c++只會套用stl的菜雞直呼??的同時又深感無力;便寫了這篇比較簡單的利用vector模擬實現的大整數。

1. 定義:

typedef vector bigint;
簡潔明瞭,乙個vector便可以模擬乙個大整數,每位數字倒序儲存在vector中,原則上來說vector中每個元素大小都不超過10;

2. 輸入與賦值:

string number;

cin>>number;

//把大整數當作string輸入

bigint big=

assigned

(number)

;bigint assigned

(string& str)

//賦值

3.比較:
bool

compared

(bigint& a,bigint& b)

}}

4. 四則運算:

加法:

bigint added

(bigint& a,bigint& b)

return c;

}

減法:
bigint diffed

(bigint& a,bigint& b)

else

}else

if(i>=lenb)

else

}else

break;}

for(

int i=c.

size()

-1;i>=

0;i--)}

c.resize

(mark+1)

;return c;

}

乘法:
bigint timesed

(bigint& a,bigint& b)

}for

(int i=c.

size()

-1;i>=

0;i--)}

c.resize

(mark+1)

;return c;

}

更新於2020.7.4

vector 簡單使用

vector是c 標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。vector之所以被認為是乙個容器,是因為它能夠像容器一樣存放各種型別的物件,簡單地說,vector是乙個能夠存放任意型別的動態陣列,能夠增加和壓縮資料。為了可以使用vector,必須在你的標頭...

vector簡單使用

其實vector並不難,就是別用混了就行了。vectorv 這是定義乙個int型向量 vectorv n 這是定義初始大小為n的向量 vectorv n,1 這是定義初始大小為n,初始值為1的向量 vector v 這樣就巢狀定義了,他可以巢狀本身,不過注意後面兩個 中間有個空格 vectorv 5...

vector簡單使用

在刷ccf題的時候日常做完去網上檢視別的同學怎麼做的 發現有使用vector後三十幾行 就寫出來的,雖然時間複雜度和我一樣十幾毫秒,but 我看中了它的 量啊!多麼的少啊!1.簡單的介紹vector 在c 語言中使用,是一種順序容器,事實上和陣列差不多,但它比陣列更優越。一般來說陣列不能動態拓展,因...