做家具有那个网站好,51wordpress,百度云虚拟主机做网站,世界500强企业数量给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中#xff0c;返回 true #xff1b;否则#xff0c;返回 false 。 
单词必须按照字母顺序#xff0c;通过相邻的单元格内的字母构成#xff0c;其中“相邻”单元格是那些水平相邻或垂直相…给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中返回 true 否则返回 false 。 
单词必须按照字母顺序通过相邻的单元格内的字母构成其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。 
思路一回溯 bool sub_exist(char** board, int row, int col, char* word, int y, int x){if(*word  \0)  return true;if(y  0 || y  row || x  0 || x  col || *word ! board[y][x]return false;board[y][x]  \0;  bool result  sub_exist(board, row, col, word  1, y  1, x) ||sub_exist(board, row, col, word  1, y - 1, x) ||sub_exist(board, row, col, word  1, y, x  1) ||sub_exist(board, row, col, word  1, y, x - 1) ;board[y][x]  *word;        return result;
}bool exist(char** board, int boardSize, int* boardColSize, char* word){for(int y  0; y  boardSize; y ){for(int x  0; x  boardColSize[0]; x ){if(board[y][x]  word[0]  sub_exist(board, boardSize, boardColSize[0], word, y, x))return true;}}return false;         
} 
分析 
本题问字符串是否在字符网中可使用回溯算法判断每一个字母前后左右是否有下一个字符若没有或者到达边界即返回false不断递归判断是否有匹配字符最后返回true或false 
总结 
本题考察回溯算法的应用注意递归的方向有前后左右四个方向。