private static void first(int[] arr) { for(int i = 0; i < arr.length; i++) { arr[i] = cal(arr[i]); } int lowBits = arr[arr.length - 1] & 3; for(int i = 0; i < arr.length; i++) { int temp = arr[i] & 3; arr[i] = (arr[i] >>> 2) ^ (lowBits << 30); lowBits = temp; } } private static int cal(int n) { int first = (0x55555555 & n) << 1; int second = (0xAAAAAAAA & n) >>> 1; return first ^ second; }

相关推荐

01-14 16:23
广州商学院 Java
双非后端失败第N人:如果准备好了可以直接投字节,字节是最不看学历的,只要想面,大概率都能给你约面。
双非有机会进大厂吗
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务