leetcode-543-560

leetcode 543 560题

leetcode543题题目:

给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。

示例

解答:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var diameterOfBinaryTree = function(root) {
var result = 0;
deep(root);
return result;

function deep(root){
if(!root){
return -1;
}
var left = root.left?deep(root.left)+1:0;
var right = root.right?deep(root.right)+1:0;
result = Math.max(left+right,result);
return Math.max(left,right);
}
};

leetcode 560题题目:

给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。

示例:

    输入:nums = [1,1,1],k=2

    输出:2, [1,1]与[1,1]为两种不同的情况。

解答:
1
2
3
4
5
6
7
8
9
10
11
12
13
var subarraySum = function(nums, k) {
var count = 0;
for(var i=0;i<nums.length;i++){
var sum = 0;
for(var j=i;j<nums.length;j++){
sum += nums[j];
if(sum==k){
count++;
}
}
}
return count;
};
分享到