@@ -0,0 +1,699 @@
+package leetcode.gray_code;%0A%0Aimport java.util.ArrayList;%0A%0Apublic class Solution %7B%0A    public ArrayList%3CInteger%3E grayCode(int n) %7B%0A        ArrayList%3CInteger%3E ans = new ArrayList%3CInteger%3E();%0A        int prev = 0;%0A        ans.add(prev);%0A        for(int cnt = 0; cnt %3C (1 %3C%3C n) - 1; cnt++)%7B%0A        %09int z = 0;%0A        %09while(((1 %3C%3C z) & cnt) != 0)%7B%0A        %09%09z++;%0A        %09%7D%0A        %09int next = prev %5E (1 %3C%3C z);%0A        %09ans.add(next);%0A        %09prev = next;%0A        %7D%0A        return ans;%0A    %7D%0A    %0A    public static void main(String%5B%5D args)%7B%0A    %09ArrayList%3CInteger%3E ans = new Solution().grayCode(1);%0A    %09for(int i : ans)%7B%0A    %09%09System.err.print(i + %22, %22);%0A    %09%7D%0A    %09System.err.println(%22%22);%0A    %7D%0A%7D%0A

Add java solution for 89. Gray Code