검지offer(12)수치의 정수 차방

2810 단어 검지offer

수치의 정수 차방

  • 제목 설명
  • 사고방식
  • 문제풀이
  • 반성
  • 제목 설명


    더블 형식의 부동점수base와 int 형식의 정수exponent를 지정합니다.베이스의 exponent 차방을 구하십시오.

    생각


    이 문제는 매우 간단하여 전형적인 귀속으로 풀 수 있는 문제이다.그러나 실제 운행은 여러 가지 상황을 고려해야 한다. 예를 들어 밑수가 0, 멱이 음수이고 귀속의 종료 조건에 주목해야 한다.
  • 밑바닥이 0인지 아닌지를 판단하고 0이면 결과 0을 직접 반환한다.
  • 멱이 음수인지 아닌지를 판단하고 음수이면 밑수의 역수를 구하는 정멱의 결과를 되돌려준다.
  • 멱이 0인지 아닌지를 판단하는 것은 귀속의 종결 조건이다.
  • 상기 조건이 끝나지 않은 상황에서 반환자 문제는 차례로 해답을 구한다.

  • 풀다

    public class Solution {
        public double Power(double base, int exponent) {
            if (base == 0)
                return 0;
            if (exponent < 0)
                return Power(1/base, - exponent);
            if (exponent == 0)
                return 1;
            return base*Power(base, exponent - 1);
      }
    }
    

    반성하다


    문제가 간단하기 때문에 전면적으로 고려하지 않고 오히려 여러 번 디버깅을 해서야 몇 가지 상황을 완전히 고려했다.

    좋은 웹페이지 즐겨찾기