关注
贴一些第一题吧,迭代的思路
public TreeNode cyclicShiftTree (TreeNode root, int k) {
// write code here
List<TreeNode> up = new ArrayList<>();
up.add(root);
while (!up.isEmpty()) {
List<TreeNode> down = new ArrayList<>();
for (int i = 0; i < up.size(); i++) {
TreeNode node = up.get(i);
down.add(node.left);
down.add(node.right);
}
int index = 0;
for (int i = 0; i < up.size(); i++) {
TreeNode node = up.get(i);
node.left = down.get((index++ - k % down.size() + down.size()) % down.size());
node.right = down.get((index++ - k % down.size() + down.size()) % down.size());
}
up.clear();
for (int i = 0; i < down.size(); i++) {
if (down.get(i) != null) {
up.add(down.get(i));
}
}
}
return root;
}
查看原帖
2 2
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
01-16 11:36
西北工业大学 C++ 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 春招什么时候投? #
2580次浏览 46人参与
# 春节提前走,你用什么理由请假? #
2949次浏览 58人参与
# 春节前,你还在投简历吗? #
4736次浏览 56人参与
# 从夯到拉,锐评职场mentor #
945次浏览 22人参与
# 实习到现在,你最困惑的一个问题 #
889次浏览 30人参与
# 聊聊Agent开发 #
10309次浏览 258人参与
# 距离春招还有一个月,你现在是什么开局? #
2283次浏览 40人参与
# 备战春招/暑实,现在应该做什么? #
938次浏览 31人参与
# 推荐一个值得做的AI项目 #
2898次浏览 90人参与
# 牛友的春节生活 #
739次浏览 25人参与
# 暑期实习什么时候投? #
2791次浏览 58人参与
# 通信硬件2024笔试面试经验 #
268989次浏览 2053人参与
# 最难的技术面是哪家公司? #
65314次浏览 971人参与
# 实习想申请秋招offer,能不能argue薪资 #
218159次浏览 1167人参与
# 一份好的简历长什么样? #
25307次浏览 447人参与
# 我想象的实习vs现实的实习 #
320845次浏览 2287人参与
# 实习必须要去大厂吗? #
188334次浏览 1765人参与
# 双非本科的出路是什么? #
208378次浏览 1563人参与
# 运营面经 #
155728次浏览 1344人参与
# 实习生活中那些难忘的瞬间 #
298773次浏览 3246人参与
