青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

jake1036

面試100 34找出數(shù)組中唯一出現(xiàn)一次的兩個數(shù)字

 面試100  34找出數(shù)組中唯一出現(xiàn)一次的兩個數(shù)字

 一問題描述
    一個數(shù)組中,存在兩個只出現(xiàn)一次的數(shù)字,其余的數(shù)字均出現(xiàn)兩次。要求在時間復(fù)雜度o(n),空間復(fù)雜度為o(1)的情況下找出這兩個數(shù)字。
 
二 問題分析
     此題實際考察了,對位操作的理解。首先進行簡化,考慮只有一個數(shù)組中,只存在出現(xiàn)了一次的一個數(shù)字,其余數(shù)字在數(shù)組中出現(xiàn)兩次,試
     找出這個數(shù)字。

 三 解決方案
    首先 回憶 異或操作,任意數(shù)字與自身相異或,結(jié)果都為0.
   還有一個重要的性質(zhì),即任何元素與0相異或,結(jié)果都為元素自身。
  
   解決方案:
  1   從數(shù)組的起始位置開始,對元素執(zhí)行異或操作,則最后的結(jié)果,即為此只出現(xiàn)了一次的元素。
 
  2  題目中,數(shù)組中存在兩個不同的元素,若是能仿造上述的解決方案,將兩個元素分別放置在兩個數(shù)組中,然后分別對每個數(shù)組進行異或操作,
     則所求異或結(jié)果即為所求。
 
  3  首先對原數(shù)組進行全部元素的異或,得到一個必然不為0的結(jié)果,然后判斷該結(jié)果的2進制數(shù)字中,為1的最低的一位。
      然后根據(jù)此位是否為1 ,可以把原數(shù)組分為兩組。則兩個不同的元素,必然分別在這兩個數(shù)組中。
 4  然后對兩個數(shù)組,進行異或操作,即可得到所求。

 四 代碼示例
     

#include <iostream>
  
using namespace std ;
  
const int N = 10 ;
  
  
int getSingle(int * a) //獲取全部元素的異或結(jié)果 
  {
      
if(!a)
        
return -1;
        
     
int sum = a[0] ; 
     
     
for(int i = 1; i < N; i++)
       sum 
^= a[i] ;
       
     
return sum ;   
  }

  
  
  
int getTwo(int * a ,int & one , int & two , int sum) //求數(shù)組中兩個不同的元素 
  {
      unsigned 
int flag = 1;
      
while(flag) //求異或結(jié)果,最低的為1的二進制位,根據(jù)此位是否為1,將元素分為兩組,兩個不同的元素,在此位必然,一個為1,一個為0 
      {
        
if(flag&sum)
           
break;
        flag 
= flag << 1 ;        
      }

      
//下面將flag與每個元素相求與,根絕結(jié)果是否為1,將其化為兩個數(shù)組
      
//分別計算每個數(shù)組的異或結(jié)果,并將結(jié)果,存儲分別存儲在one和two中。
      one = two = 0 ;//0與任何數(shù)異或都為其自身,所以初始化的時候,應(yīng)該初始化為0 
      for(int i = 0 ; i < N ;i++ )
      
{
        
if(a[i] & flag) 
        
{
                one 
^= a[i] ;
        }

        
else
        
{
             two 
^= a[i] ;
        }
        
      }

      
  }

  
  
int main()
  
{
      
int a[N] = {3 , 5 ,8 , 8 , 5 , 3 ,1 ,4 ,4,10} ;   
      
int single = getSingle(a) ;
      
int one = 0 ;
      
int two  = 0;
      getTwo(a ,one , two ,single) ;
      cout
<<single<<" "<<one<<" "<<two<<endl ;
     system(
"pause") ;
     
return 0 ;    
  }









 

 

posted on 2011-05-21 21:20 kahn 閱讀(1395) 評論(2)  編輯 收藏 引用 所屬分類: 算法相關(guān)

Feedback

# re: 面試100 34找出數(shù)組中唯一出現(xiàn)一次的兩個數(shù)字 2011-05-22 17:49 jince

解決方案說清楚一點,誰和誰異或?什么兩個數(shù)組,這能看么?大半在猜測你的說的話!  回復(fù)  更多評論   

# re: 面試100 34找出數(shù)組中唯一出現(xiàn)一次的兩個數(shù)字 2011-08-16 16:14 aa

@jince
這還要說么?  回復(fù)  更多評論   


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美亚洲免费在线| 国产精品99久久久久久久久久久久| 久久综合中文色婷婷| 亚洲精品中文在线| 欧美国产丝袜视频| 91久久黄色| 亚洲国产视频直播| 老色批av在线精品| 一区二区三区精品| 精品成人一区二区三区| 欧美成人久久| 国产精品男女猛烈高潮激情| 久久国产黑丝| 欧美成人精品1314www| 亚洲手机视频| 久久综合久久综合九色| 在线亚洲美日韩| 欧美在线精品免播放器视频| 亚洲精品在线观看免费| 亚洲专区一区| 在线视频中文亚洲| 玖玖玖国产精品| 先锋影音久久久| 你懂的国产精品| 久久九九免费视频| 欧美日韩精品一区二区在线播放| 欧美一区二区三区四区视频| 欧美日韩一级黄| 亚洲精品国产欧美| 亚洲区在线播放| 久久久精品tv| 免费欧美高清视频| 国产欧美在线视频| 亚洲欧美日韩在线| 欧美亚洲自偷自偷| 国产麻豆精品视频| 性欧美大战久久久久久久免费观看 | 欧美性大战久久久久久久| 久久精品视频在线| 国产深夜精品福利| 亚洲视频在线观看免费| 亚洲女性喷水在线观看一区| 欧美国产亚洲精品久久久8v| 在线精品国产欧美| 蜜桃av综合| 亚洲国产一区二区精品专区| 夜夜嗨av色综合久久久综合网| 欧美日韩国产在线播放| 亚洲精品免费一二三区| 亚洲线精品一区二区三区八戒| 国产毛片一区二区| 麻豆乱码国产一区二区三区| 亚洲美女免费视频| 久久偷看各类wc女厕嘘嘘偷窃| 黄色综合网站| 欧美偷拍另类| 久久综合电影| 欧美一区二区视频在线观看2020 | 亚洲深夜激情| 国产精品午夜久久| 欧美电影在线| 亚洲午夜激情| 亚洲精品网址在线观看| 久久精品国产精品亚洲| 一区二区久久久久| 精品91视频| 国产精品久久久久久久午夜| 欧美va亚洲va国产综合| 亚洲在线观看视频| 亚洲高清资源| 两个人的视频www国产精品| 亚洲综合精品一区二区| 99综合在线| 一区二区三区高清在线观看| 最新成人在线| 亚洲国产精品第一区二区三区| 国产尤物精品| 国产午夜亚洲精品羞羞网站| 麻豆九一精品爱看视频在线观看免费| 国产精品扒开腿做爽爽爽视频 | 欧美精品一区二区三区蜜臀| 欧美一区二区三区视频| 小处雏高清一区二区三区| 欧美一区免费| 欧美一级夜夜爽| 久久久福利视频| 欧美成人国产va精品日本一级| 免费在线播放第一区高清av| 欧美不卡视频一区发布| 欧美日韩午夜精品| 国产女主播一区二区| 亚洲二区三区四区| 一本色道88久久加勒比精品| 性感少妇一区| 欧美国产亚洲另类动漫| 亚洲精品少妇网址| 性欧美xxxx大乳国产app| 另类国产ts人妖高潮视频| 欧美日韩二区三区| 欧美色欧美亚洲高清在线视频| 欧美日产在线观看| 国产精品久久久久一区二区三区共 | 麻豆久久婷婷| 国产精品久久久久久久久免费 | 性久久久久久久| 欧美成人乱码一区二区三区| 亚洲三级影院| 久久久爽爽爽美女图片| 欧美激情成人在线| 国产欧美在线观看| 在线一区二区三区四区| 久久综合网络一区二区| 午夜精品久久久久久久99热浪潮| 免费日韩av| 亚洲一级二级在线| 欧美成人免费全部观看天天性色| 欧美日韩综合| 尤物网精品视频| 欧美在线电影| 欧美国产亚洲另类动漫| 久久精品国产第一区二区三区最新章节| 欧美人在线视频| 99精品视频免费| 亚洲日本欧美在线| 欧美片在线观看| 一区二区高清在线观看| 最新精品在线| 欧美精品一区二区三区久久久竹菊| 精品99一区二区三区| 久久午夜视频| 久久久99免费视频| 激情综合久久| 久久综合九九| 欧美黄在线观看| av成人动漫| 亚洲女人小视频在线观看| 国产一区二区精品丝袜| 麻豆av一区二区三区| 欧美成年人视频网站| 亚洲欧洲日本mm| 中国成人黄色视屏| 一区久久精品| 亚洲久久在线| 韩国精品久久久999| 91久久精品国产91性色tv| 国产精品成人av性教育| 久久精品国产99精品国产亚洲性色 | 亚洲图片激情小说| 欧美淫片网站| 亚洲天堂av综合网| 久久久久久999| 欧美在线视频观看| 欧美日韩亚洲一区| 亚洲国产岛国毛片在线| 国内精品美女av在线播放| 99精品99| 亚洲视屏一区| 欧美国产视频在线观看| 欧美一区二区三区在线看| 欧美精品v国产精品v日韩精品| 久久综合九色综合网站| 国产日韩欧美精品在线| 亚洲一区欧美二区| 久久国产精品久久精品国产| 国产精品久久久久三级| 亚洲自拍偷拍一区| 午夜精品久久久久久久99樱桃| 亚洲一区二区三区激情| 亚洲午夜免费视频| 亚洲国产一区视频| 国产日产高清欧美一区二区三区| 欧美不卡福利| 美女视频黄 久久| 久久久国产精彩视频美女艺术照福利| 一本色道久久88综合日韩精品| 亚洲天堂av在线免费观看| 国产午夜精品久久久久久久| 久久亚洲一区| 亚洲视频每日更新| 久久美女性网| 亚洲一区久久| 亚洲全部视频| 精品动漫av| 国产一级久久| 国产精品乱人伦一区二区| 欧美xxx在线观看| 久久精品国产久精国产爱| 一区二区三区 在线观看视频| 欧美福利视频网站| 久久精品女人的天堂av| 一区二区电影免费观看| 亚洲黄色天堂| 亚洲伦伦在线| 亚洲国产综合视频在线观看| 国产精品久久午夜| 欧美日韩亚洲一区二区三区四区| 欧美电影美腿模特1979在线看| 欧美劲爆第一页| 国产欧美日本一区二区三区| 国产免费一区二区三区香蕉精|