public int [] singleNumbers(int [] nums){ int x = 0、y = 0、n = 0、m = 1; // XOR をトラバースfor(int num:nums){ n ^ = num; } //シフトループに残っている場合は、m を計算しますwhile((n&m)== 0){ m << = 1; } // numsグループ をトラバースしますfor(int num:nums){ if((num&m)!= 0) { x ^ = num; } else { y ^ = num; } } return new int [] {x、y}; }
Swordは、Offer-58配列内の番号の出現回数を指します
おすすめ
転載: blog.csdn.net/a792396951/article/details/114284985
おすすめ
ランキング