全精度乘法

2021-09-23 15:35:46 字數 498 閱讀 7130

團隊基礎培訓的小玩意兒。

乘法基本流程:

1.移小數點變整數

2.豎式乘法

3.結果累加

4.恢復小數字

只是測試演示**,沒有過多注意效能問題,下述**計算示例執行13秒,預計做以下優化可以提公升至1少以內,大抵滿足絕大部分應用場景的時間複雜度要求(未試),有興趣的可以改進一下:

1.運算中的中間結果使用陣列來存放

2.在1的基礎上可以依據64位系統的完整整數乘法和加法支援的最高位數分組計算和存放(進製稍複雜)

3.在計算中使用速演算法

4.在二進位制層面進行位移乘法

另:上面那一小段**  wimg,是練習迴圈和變數控制的,輸入縷空正方形中縷空菱形中縷空正方形

addnum實際上就是乙個全精度加法函式了,只是只支援整型,可以適當加以改造支援小數

演算法沒有考慮正負數(其實很簡單,加法轉換一下就可以,乘法只需要考慮一下數值符號即可)

高精度乘法

問題描述 給你兩個正整數a,b,計算它們的乘積。輸入格式 第一行乙個正整數a 第二行乙個正整數b 輸出格式 一行,表示a b 樣例輸入 111222333444555666777888999 999888777666555444333222111 樣例輸出 提示 a,b分別不超過100000位 ff...

高精度乘法

include include include includeusing namespace std const int maxn 5000 inline int get struct data data operator const data b for int i 1 i c.len i whi...

高精度乘法

高精度乘法1 樸素運算 傳入引數約定 string string 演算法思想 倒置相乘 然後統一處理進製 再還原 演算法複雜度 o n 2 include using namespace std const int l 110 string mul string a,string b for int...