- 最後登錄
- 2023-3-4
- 在線時間
- 1 小時
- 註冊時間
- 2008-9-27
- 閱讀權限
- 20
- 精華
- 0
- UID
- 5031647
- 帖子
- 575
- 積分
- 196 點
- 潛水值
- 14681 米
| 分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。 本帖最後由 ren1244 於 2017-3-14 12:43 AM 編輯
提供另外一個參考答案:- float power(float x,unsigned y)
- {
- float t;
- if(y<=1)
- return y==1?x:1.0;
- t=power(x,y/2);
- return y%2?t*t*x:t*t;
- }
複製代碼 這也是遞迴的寫法,但是速度比之前更快。
例如計算3的13次方
原本的方法是:3*3*3*3*3*3*3*3*3*3*3*3*3,要跑13次
而這個版本的方法是:((32*3)2)2*3,大約跑4次
圖示說明:
... |
附件: 你需要登錄才可以下載或查看附件。沒有帳號?註冊 |