• <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>

            FireEmissary

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              14 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks

            Given a 2D board and a word, find if the word exists in the grid.

            The word can be constructed from letters of sequentially adjacent cell, where "adjacent" cells are those horizontally or vertically neighboring. The same letter cell may not be used more than once.

            For example,
            Given board =

            [   ['A','B','C','E'],   ['S','F','C','S'],   ['A','D','E','E'] ] 
            word = "ABCCED", -> returns true,
            word = "SEE", -> returns true,
            word = "ABCB", -> returns false.

            訪問過的元素不能再訪問,發現大家的實現都是用個附加結構標記訪問過的.就地賦值個'\0'后面再恢復好啦.......

             bool exist(vector<vector<char>>& board,int i,int j,string::iterator beg,string::iterator end)
               {
                   
            bool res=true;
                   
            char cur=*beg++;
                   
            if(board[i][j]!=cur)return false;
                   
            if(beg==end)return true;   
                   board[i][j]
            =0;
                   
            do{//上下左右
                    if(i+1<board.size()&&exist(board,i+1,j,beg,end))
                       
            break;
                    
            if(i-1>=0&&exist(board,i-1,j,beg,end))
                      
            break;
                    
            if(j+1<board[0].size()&&exist(board,i,j+1,beg,end))
                       
            break;
                      
            if(j-1>=0&& exist(board,i,j-1,beg,end))
                        
            break;
                        res
            =false;
                     }
            while(0);
                    board[i][j]
            =cur; 
                   
            return res;
               }
                
            bool exist(vector<vector<char>>& board, string word) {
                      
            char beg=word[0];
                      
            for(int i=0;i<board.size();++i)
                        
            for(int j=0;j<board[0].size();++j)
                            
            if(exist(board,i,j,word.begin(),word.end()))
                                
            return true;
                    
            return false;
                                
                }


            posted on 2016-03-26 18:41 FireEmissary 閱讀(925) 評論(0)  編輯 收藏 引用
            国产一区二区精品久久凹凸| 亚洲午夜福利精品久久| 99久久做夜夜爱天天做精品| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 久久久久国产视频电影| 国产精品美女久久久网AV| 久久精品三级视频| 欧美喷潮久久久XXXXx| 丁香久久婷婷国产午夜视频| 亚洲精品高清一二区久久| 国产精品久久久久久| 久久久久综合中文字幕| .精品久久久麻豆国产精品 | 久久综合精品国产一区二区三区| 久久国内免费视频| 国产综合成人久久大片91| 久久99这里只有精品国产| 久久精品一区二区国产| 久久久久久久久66精品片| 久久精品成人免费看| 欧美亚洲国产精品久久| 久久久无码精品亚洲日韩软件| 国产精品禁18久久久夂久| 久久人妻少妇嫩草AV蜜桃| 精品久久久久久无码中文字幕 | 久久精品国产精品国产精品污| 久久乐国产综合亚洲精品| 久久精品国产国产精品四凭| 精品久久久久久久| AV无码久久久久不卡网站下载| 精品综合久久久久久97| 亚洲人成无码久久电影网站| 久久久精品日本一区二区三区 | 免费一级欧美大片久久网| 国产AⅤ精品一区二区三区久久| 国产成人精品白浆久久69| 亚洲va久久久噜噜噜久久天堂 | 99久久99久久久精品齐齐| 日韩人妻无码精品久久免费一 | 精品久久人人爽天天玩人人妻| 久久久久久久久66精品片|