//二叉树第i层结点个数intLevelNodeCount(BiTree T,int i){if(T ==NULL|| i <1)return0;if(i ==1)return1;returnLevelNodeCount(T->lchild, i -1)+LevelNodeCount(T->rchild, i -1);}intGetDepthOfBiTree(BiTree T){if(T ==NULL)return0;returnGetDepthOfBiTree(T->lchild)>GetDepthOfBiTree(T->rchild)?GetDepthOfBiTree(T->lchild)+1:GetDepthOfBiTree(T->rchild)+1;}intMaxWidth(BiTree T){int per =0;int max =0;for(int i =1; i <=GetDepthOfBiTree(T); i++){
per =LevelNodeCount(T, i);if(per > max)
max = per;}return max;}
2.2法二: 顺序队列实现层序遍历
intMaxWidth(BiTree T){if(T ==NULL)return0;
BiTree queue[100]={0};
BiTree cur =NULL;int begin =0, end =0;int perLevel =0, max =0;//每入队一个结点 end++表示有效数据加一
queue[end++]= T;//begin != end: 队中还有结点 还未取到上一层所有结点的子结点while(begin != end){
perLevel = end - begin;if(perLevel > max)
max = perLevel;//cur指向队头结点 (马上就要被遗弃 因为已经被访问)//begin++表示当前结点已被遍历 当前结点被遗弃
cur = queue[begin++];if(cur->lchild)
queue[end++]= cur->lchild;if(cur->rchild)
queue[end++]= cur->rchild;}return max;}
要在 Linux 中查看当前目录下每个文件夹的大小,可以使用 du 命令(磁盘使用情况)结合其他一些选项。下面是几个常用的命令示例:
显示当前目录下每个文件夹的大小——只显示一层文件夹:
du -h --max-depth1该命令会以人…
class Solution {//1.用矩阵的第一行和第一列来标记该行或该列是否应该为0,但是这样的话忽视了第一行或第一列为0的情况//2.用标记row0和column0来标记第一行或第一列是否该为0public void setZeroes(int[][] matrix) {int n matrix.length;int m matrix[0].length;boolean r…