今天主要完成了3道題目以及vector的初步使用數組
題目一:一列數中,找出只出現一次的數,別的數都出現2次。ide
思想:利用異或,由於相同爲0,相異爲1。指針
題目二:由題一變形:找出一堆數中出現一次的2個數,別的數都出現2次ci
思想:第一步:將全部數異或,獲得的爲出現一次的2個數的異或結果val。第二步:根據val找出第一個爲1的位i,由於爲1表明這2個數該位是不一樣的。第三步,根據該位i將全部數分爲2組,這樣就成功這2個數分爲了2組,而後將2組分別異或,就獲得了這2個數。it
題目三:也是題目一的變形:有一堆數,找出只出現一次的數,別的數都出現3次。模板
思想:定義一個32位的數組,將全部數全部位的1統計起來,若是某個位的1的個數位3n+1,則該位定有出現一次的數,不然不是,根據這點,能夠將數還原出來。class
vector的使用:統計
首先vector是一個動態的數組,想當於一個模板,根據類型來決定是什麼類型的數組,由start,finish,endofstorage三個指針控制該數組,start指向的是第一個位置,finish指向的是size位置,endofstorage指向的是capacity。
di