#LeetCode:136. Single Number

灆洢 2020-05-05 08:55:47

此題要找出整數陣列中唯一沒有與其他數字重複出現的數字是哪一個數字。

利用兩個一樣的數字做 XOR 運算會等於零的性質,將陣列中的所有數字全部做 XOR 後,剩下來的數字就是唯一沒有與人重複的數字。

Kotlin(212ms)

/*******************************************************
 * LeetCode 136. Single Number                         *
 * Author: Maplewing [at] knightzone.studio            *
 * Version: 2020/05/05                                 *
 *******************************************************/
class Solution {
    fun singleNumber(nums: IntArray): Int =
        nums.reduce { acc, number -> acc xor number }
}

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料