题目来源:
leetcode题目,网址:110. 平衡二叉树 - 力扣(LeetCode)
解题思路:
模拟分式计算过程即可。
解题代码:
- class Solution {
- public int[] fraction(int[] cont) {
- if(cont.length==1){
- return new int[]{cont[0],1};
- }
- int B=1;
- int C=cont[cont.length-1];
- for(int i=cont.length-2;i>=0;i--){
- int A=cont[i];
- B=A*C+B;
- int gcd=getGCD(B,C);
- B=B/gcd;
- C=C/gcd;
- int temp=B;
- B=C;
- C=temp;
- }
- return new int[]{C,B};
- }
- public int getGCD(int a,int b){
- for(int i=Math.min(a,b);i>=0;i--){
- if(a%i==0 && b%i==0){
- return i;
- }
- }
- return 1;
- }
- }
总结:
无官方题解。可用辗转相除法求最大公约数。