Circular Permutation in Binary Representation LeetCode solution in Java
1class Solution {2public List<Integer> circularPermutation(int n, int start) {3List<Integer> l = new ArrayList<Integer>();4int i = 0;5int len = (int) Math.pow(2, n);6int[] arr = new int[len];7while (i < len) {8arr[i] = (i) ^ (i / 2);9i++;10}1112i = 0;13while (arr[i] != start) i++;14while (i < arr.length) {15l.add(arr[i]);16i++;17}18i = 0;19while (i < arr.length && arr[i] != start) {20l.add(arr[i]);21i++;22}23return l;24}25}