• <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 閱讀(933) 評論(0)  編輯 收藏 引用
            久久久久亚洲精品无码网址| 国产午夜精品久久久久九九| 久久久久久久久无码精品亚洲日韩 | 久久不见久久见免费视频7| 97精品久久天干天天天按摩| 亚洲国产综合久久天堂 | 一级做a爰片久久毛片人呢| 久久最新免费视频| 国产V亚洲V天堂无码久久久| 久久99九九国产免费看小说| 91亚洲国产成人久久精品网址| 久久久久久久久久久| 久久久久久国产精品美女 | 国产99久久久久久免费看| 久久久久高潮综合影院| 日韩美女18网站久久精品| 久久精品国产秦先生| 狠狠综合久久综合88亚洲| 色综合合久久天天给综看| 99精品久久精品一区二区| 亚洲国产精品高清久久久| 久久人人爽人人爽人人片AV不| 久久精品成人免费国产片小草| 中文字幕一区二区三区久久网站| 亚洲AV无码1区2区久久| 亚洲精品无码久久久久去q | 久久只这里是精品66| 欧美亚洲日本久久精品| 国产福利电影一区二区三区久久久久成人精品综合 | 思思久久好好热精品国产| 久久午夜电影网| 久久婷婷久久一区二区三区| 国产日产久久高清欧美一区| 国产精品久久波多野结衣| 久久久久国产精品| 狠狠精品干练久久久无码中文字幕| 国产精品久久久久久久久免费| 99re久久精品国产首页2020| 久久青青草原国产精品免费| 久久精品成人一区二区三区| 亚洲国产精品无码久久九九 |