単一の数字 I

DDD
リリース: 2024-09-19 06:17:33
オリジナル
495 人が閲覧しました

Single Number I

問題

存在する番号は 1 回だけ見つけなければなりません。
ブルートフォースアプローチは、HashMap を使用して値のカウントを追跡し、カウント =1 の値を返すことです。

ビット操作を使用した最適なアプローチ:

他のすべての組み合わせでは、1^0 = 1、0 ^1 = 1、0 ^ 0 = 0、1 ^ 1= 0 であることがわかっています。
これは、exor が同じ値に対して 0 を与えることを意味します。したがって、配列内のすべての値を exor すると、カウントが 1 の数値のみが得られます (残りの値は 0 になるため)

TC: O(n)
SC:O(1)

class Solution {
    public int singleNumber(int[] nums) {
        int single = nums[0];
        for(int i =1;i<nums.length;i++){
            single = single^nums[i];
        }
        return single;
    }
}
ログイン後にコピー

以上が単一の数字 Iの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!