1
class Solution {
2

3
public List<Integer> pathInZigZagTree(int label) {
4
int level, upper, parent, i = label;
5
double min, max;
6
List<Integer> ans = new ArrayList<Integer>();
7

8
ans.add(i);
9

10
while (i > 1) {
11
level = (int) (Math.log(i) / Math.log(2));
12
upper = level - 1;
13
min = Math.pow(2.0, upper);
14
max = Math.pow(2.0, level) - 1;
15
parent = (int) (min + max) - i / 2;
16

17
ans.add(0, parent);
18
i = parent;
19
}
20

21
return ans;
22
}
23
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0