【LeetCode笔记】剑指 Offer 16. 数值的整数次方(Java、分治)
生活随笔
收集整理的這篇文章主要介紹了
【LeetCode笔记】剑指 Offer 16. 数值的整数次方(Java、分治)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 題目描述
- 思路 && 代碼
- 二刷
題目描述
- 很棒的題目!便于分治思想的理解!
思路 && 代碼
- 分情況是大頭~
- 遞歸結束的情況:
- x0x^0x0 = 1
- x1x^1x1 = x
- x?1^-1?1 = 1 / x
- 偶數情況:直接二分遞歸
- 奇數情況:先向下取整二分遞歸,再補乘一個n即可
二刷
class Solution {public double myPow(double x, int n) {if(n == 0) {return 1;}if(n == 1) {return x;}if(n == -1) {return 1 / x;}double half = myPow(x, n / 2);return half * half * myPow(x, n % 2);} }總結
以上是生活随笔為你收集整理的【LeetCode笔记】剑指 Offer 16. 数值的整数次方(Java、分治)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【学习笔记】第三章——内存 II(分页存
- 下一篇: 语言还是你不得不服的大哥级别编程语言!