java树结构遍历_树形结构,java_树遍历统计总数,树形结构,java - phpStudy
树遍历统计总数
{
platformId: 3,
areaId: "",
areaName: "ROOT",
parentAreaId: "",
online: 0,
offline: 0,
total: 0,
sum: 0,
sumOnline: 0,
sumOffline: 0,
children: [{
platformId: 3,
areaId: "000",
areaName: "测试",
parentAreaId: "",
online: 2,
offline: 1,
total: 3,
sum: 0,
sumOnline: 0,
sumOffline: 0,
children: [{
platformId: 3,
areaId: "000002",
areaName: "测试2",
parentAreaId: "000",
online: 0,
offline: 0,
total: 0,
sum: 0,
sumOnline: 0,
sumOffline: 0,
children: []
},
{
platformId: 3,
areaId: "000001",
areaName: "测试1",
parentAreaId: "000",
online: 30,
offline: 0,
total: 30,
sum: 0,
sumOnline: 0,
sumOffline: 0,
children: []
},
{
platformId: 3,
areaId: "000000",
areaName: "测试0",
parentAreaId: "000",
online: 274,
offline: 10,
total: 284,
sum: 0,
sumOnline: 0,
sumOffline: 0,
children: []
}
]
}]
}
这种树结构的数据怎么遍历统计,每个结点的sum要是下级节点total的总和及本节点total的总和,每个节点的sumoffline要是下级节点及本节点offline的总和
private AreaCameraStatusSum count(AreaCameraStatusSum root){
int total = root.getTotal();
int offline = root.getOffline();
if(root.getChildren().size() < 1){
root.setSum(total);
root.setSumOffline(offline);
return root;
}
int sum = total;
int sumOffline = offline;
for(AreaCameraStatusSum child : root.getChildren()){
AreaCameraStatusSum tmp = count(child);
sum += tmp.getSum();
sumOffline += tmp.getSumOffline();
}
root.setSum(sum);
root.setSumOffline(sumOffline);
return root;
}
上面用递归的方法可以求出每个节点的和,不知道有没有更好的方法
相关阅读:
AbstractQueuedSynchronizer的Node状态
点阵造字怎么实现?
关于检索类似话题机制
handlebars each 中如何使用外层变量的值(作用域)?
jQuery append() 方法如何添加表格?为何添加了没效果?
二级域名指向个人中心如何做到的?
为什么最后一个var_dump()只能打印一个数组
将子查询改造成join连接查询
两个请求之间为什么会有一段间隔,浏览器到底在干什么在这段时间
微信的这种效果是怎么实现的
关于history.back()问题?
python中的函数如何这样传入参数?
nginx有可以调用系统命令的模块么
如何查看top进程是如何启动的?
dropzone.min.js 怎么能获取后台返回的数据?
php操作数据库的连接与释放怎样做比较好?
求 MONGODB shell的api
一个uid可以对应多个用户名吗?
Can not receive/send message from certain group anymore
如何实现点击“加载更多”?
java树结构遍历_树形结构,java_树遍历统计总数,树形结构,java - phpStudy相关推荐
- 视频教程-大型Java项目视频教程_王勇老师DRP项目教程完整版292集-Java
大型Java项目视频教程_王勇老师DRP项目教程完整版292集 动力节点王勇老师,CCTV<影响力对话>栏目特约嘉宾,Java培训知名讲师,中国Java培训领军人物,北京动力节点创始人,董 ...
- 有向图的广度优先遍历_图的两种遍历方式
1 引言 遍历是指从某个节点出发,按照一定的的搜索路线,依次访问对数据结构中的全部节点,且每个节点仅访问一次. 在二叉树基础中,介绍了对于树的遍历.树的遍历是指从根节点出发,按照一定的访问规则,依次访 ...
- 多叉树的前序遍历_二叉树的非递归遍历的思考
封面图来自wikipedia 1 简介 二叉树的深度优先遍历(前序遍历.中序遍历.后序遍历)是一个比较基本的操作.如果使用递归的做法,很容易写出相应的程序:而如果使用非递归的做法,虽然也能写出相应的代 ...
- java数组搞笑_面试官:小伙子,给我说一下Java 数组吧
Java 数组 Java 语言中提供的数组是用来存储固定大小的同类型元素. 1.声明数组变量 首先必须声明数组变量,才能在程序中使用数组. dataType[] arrayRefVar; // 首选的 ...
- java前沿技术_互联网百强企业架构师告诉你,Java应该这么学!云和数据超全面Java中级程序员学习路线图重磅发布!...
作为常居编程语言排行榜第一名的编程语言,Java语言以其稳定性.健壮性著称,是一门非常成熟的编程语言,多年来一直是国际上众多企业的首选编程语言. Java语言不仅吸收了C++语言的各种优点,还摒弃了C ...
- 怎么安装java插件下载_向各位牛人请教:正常安装的Java,浏览器却不能加载插件怎么办?...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 我的Java安装并且正常运行,但浏览器无法加载某个重要的Java插件,Java控制台显示如下代码: Java 插件11.25.2.18 使用 JRE 版本 ...
- java 回归遍历_回归基础:代码遍历
java 回归遍历 This article guides you through the basics of regression by showing code and thorough expl ...
- pat根据中序遍历和先序遍历_[leetcode/lintcode 题解] 前序遍历和中序遍历树构造二叉树...
[题目描述] 根据前序遍历和中序遍历树构造二叉树. 在线评测地址: 九章算法 - 帮助更多中国人找到好工作,硅谷顶尖IT企业工程师实时在线授课为你传授面试技巧www.jiuzhang.com [样例 ...
- 多层数组如何遍历_带你从零学大数据系列之Java篇---第五章:数组
温馨提示:如果想学扎实,一定要从头开始看凯哥的一系列文章(凯哥带你从零学大数据系列),千万不要从中间的某个部分开始看,知识前后是有很大关联,否则学习效果会打折扣. 系列文章第一篇是拥抱大数据:凯哥带你 ...
最新文章
- json前台后台解析和拼接使用
- python中如果要多次输入文本,关于文本游戏:文本游戏 – 如果语句基于输入文本 – Python...
- SpringBoot应用日志通过logstash远程上传到ES
- 21岁就破解困扰人们300年难题的天才,却一生坎坷,怀才不遇,至死还得不到认可...
- 富文本 NSAttributedString
- 重构代码 —— 提取出类
- sublime3环境
- 用js判断空对象的几种方法
- Linux 网络配置 修改DNS配置文件/etc/resolv.conf后,重启网络,DNS配置丢失
- 善待自己 改变命运的N个人生哲理
- 使用标准输出流(system.out)和打印流 (PrintWriter)来读取txt文件
- 一个理工女宝妈和西牧乳业奶粉的故事
- 基于AM5728 DSP JTAG连接调试方法
- 又一大佬加盟OpenAI!他还是姚班学霸陈立杰的导师
- Linux虚拟地址和物理地址的映射
- glTexImage2D 函数详解
- 通过代码实现重启手机
- Jupyterlab安装和配置
- Matlab 结构体(struct)使用
- 选择隔离电源还是非隔离电源?
热门文章
- 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
- JDBC PrepareStatement insert delete update DML
- 牛客网华为机考试题(1)
- Android之——自动挂断电话的实现
- CSS如何画一个三角形 + CSS如何画月亮
- 【095】Iconfont-阿里官方图标库和插画库
- 7. linux软件安装
- Windows - 将网页打包成 exe
- iPhone 手机内存,
- win7怎么更改计算机虚拟内存,win7怎么改虚拟内存_win7更改虚拟内存方法-win7之家...