1class Solution {23public List<Integer> pathInZigZagTree(int label) {4int level, upper, parent, i = label;5double min, max;6List<Integer> ans = new ArrayList<Integer>();78ans.add(i);910while (i > 1) {11level = (int) (Math.log(i) / Math.log(2));12upper = level - 1;13min = Math.pow(2.0, upper);14max = Math.pow(2.0, level) - 1;15parent = (int) (min + max) - i / 2;1617ans.add(0, parent);18i = parent;19}2021return ans;22}23}