记录自己第一次手撕代码...
1.html实现以下布局
2.给定一个包含n个正整数的数组和一个正整数s,找出数组中满足其和sum>=s的长度最小的连续子数组,并返回其长度。如果不存在子数组,则返回0。
public int minSubArrayLen(int target, int[] nums) {
int left = 0;
int sum = 0;
int min = Integer.MAX_VALUE;
for (int i = 0; i < nums.length; i++) {
sum += nums[i];
if (sum >= target) {
min = Math.min(min, i - left + 1);
}
while (sum - nums[left] >= target) {
sum -= nums[left++];
min = Math.min(min, i - left + 1);
}
}
if (min == Integer.MAX_VALUE) {
return 0;
}
return min;
}
3.给定一颗n元树,求其最大深度。最大深度是指从根节点到最远叶节点的最长路径的节点数。
方法一:递归
public int maxDepth(Node* root) {
if(root == nullptr)
{
return 0;
}
int depth = 0;
for(int i = 0; i < root->children.size(); i++)
{
depth = max(depth, maxDepth(root->children[i]));
}
return 1 + depth;
}
方法二:层次遍历
public int maxDepth(Node* root) {
int depth = 0;
queue<Node*> que;
if(root != nullptr) que.push(root);
while(!que.empty())
{
depth++;
int size = que.size();
for(int i = 0; i < size; i++)
{
Node* tmpNode = que.front();
que.pop();
for(int i = 0; i < tmpNode->children.size(); i++)
{
if(tmpNode->children[i]) que.push(tmpNode->children[i]);
}
}
}
return depth;
}
标签:BDE,min,int,sum,depth,技术顾问,que,2023,root
From: https://www.cnblogs.com/yan999/p/17400330.html