题解 | #将满二叉树转换为求和树#

将满二叉树转换为求和树

https://www.nowcoder.com/practice/b31734e46ba644de85a9cf95bbd57a5f

分治思想
import java.util.*;

public class Main{
    static int[] res;
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        String[] s=sc.nextLine().split(" ");
        int n=s.length;
        res=new int[n];
        int[] nums=new int[n];
        for(int i=0;i<n;i++){
            nums[i]=sc.nextInt();
        }
        traverse(nums,0,n-1);
        StringBuilder sb=new StringBuilder();
        for(int i=0;i<n;i++){
            sb.append(res[i]).append(" ");
        }
        System.out.print(sb.toString().trim());
    }
    public static int traverse(int[] nums,int i,int j){
        int mid=(i+j)/2;
        if(i==j)
            return nums[i];
        res[mid]=traverse(nums,i,mid-1)+traverse(nums,mid+1,j);
        return res[mid]+nums[mid];
    }
}


全部评论

相关推荐

孙艹肘:校招不给三方直接让实习我都去了,,主打一个在学校呆着也是闲着,不如出来实习一下
点赞 评论 收藏
分享
哈哈哈,你是老六:我去,这面试还要靠抢啊
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务