常考数据结构与算法:异或操作
生活随笔
收集整理的這篇文章主要介紹了
常考数据结构与算法:异或操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
public class XorBit {public static void main(String[] args) {int[] arr = {1,1,3,2,3,2,3,4};int temp = 0;for (int i = 0; i < arr.length; i++) {temp = arr[i]^temp;}int eor = temp;// 0111// 提取最右側的1temp = temp & ((~temp)+1);int right = 0;int[] arr1 = new int[arr.length];int[] arr2 = new int[arr.length];for (int i = 0; i < arr.length; i++) {right = arr[i] & temp;if(right == temp){arr1[i] = arr[i];}else{arr2[i] = arr[i];}}temp = 0;for (int i = 0; i < arr1.length; i++) {temp = arr1[i]^temp;//System.out.print(arr1[i]+" ");}System.out.println(eor +" " +temp+" "+(eor ^ temp));temp = 0;for (int i = 0; i < arr2.length; i++) {temp = arr2[i]^temp;//System.out.print(arr1[i]+" ");}// 0111// 0011// 0100System.out.println(temp);}
}
?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的常考数据结构与算法:异或操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常考数据结构与算法:平衡二叉树
- 下一篇: jvm:运行时数据区--操作数栈