思路

代码

public boolean exist(char[][] board, String word) {boolean[][] choose=new boolean[board.length][board[0].length];for(int i=0;i<board.length;i++) {for(int j=0;j<board[0].length;j++) {choose[i][j]=true;if(board[i][j]==word.charAt(0)&&backtrack(board,i,j,choose,word.substring(1)))return true;choose[i][j]=false;}}return false;}private boolean backtrack(char[][] board,int row,int col,boolean[][] choose,String word) {if(word.isEmpty())return true;if(row>=0&&row<board.length&&col>=0&&col<board[0].length) {if(col-1>=0&&(!choose[row][col-1])&&board[row][col-1]==word.charAt(0)) {choose[row][col-1]=true;if(backtrack(board,row,col-1,choose,word.substring(1)))return true;choose[row][col-1]=false;}//左if(row-1>=0&&(!choose[row-1][col])&&board[row-1][col]==word.charAt(0)) {choose[row-1][col]=true;if(backtrack(board,row-1,col,choose,word.substring(1)))return true;choose[row-1][col]=false;}//右if(col+1<board[0].length&&(!choose[row][col+1])&&board[row][col+1]==word.charAt(0)) {choose[row][col+1]=true;if(backtrack(board,row,col+1,choose,word.substring(1)))return true;choose[row][col+1]=false;}if(row+1<board.length&&(!choose[row+1][col])&&board[row+1][col]==word.charAt(0)) {choose[row+1][col]=true;if(backtrack(board,row+1,col,choose,word.substring(1)))return true;choose[row+1][col]=false;}}//检查四个坐标return false;}

【leetcode0079】单词搜索相关推荐

  1. 【每日一题】212. 单词搜索 II

    212. 单词搜索 II 题目描述: 给定一个 m x n 二维字符网格 board 和一个单词(字符串)列表 words,找出所有同时在二维网格和字典中出现的单词. 单词必须按照字母顺序,通过 相邻 ...

  2. LeetCode算法题13:DFS/BFS - 单词搜索

    文章目录 单词搜索 DFS : 小小的优化 总结 单词搜索 题目链接:https://leetcode-cn.com/problems/word-search/ 题目描述: 给定一个 m x n 二维 ...

  3. C++words search单词搜索的算法实现(附完整源码)

    C++words search单词搜索的算法实现 C++words search单词搜索的算法实现完整源码(定义,实现,main函数测试) C++words search单词搜索的算法实现完整源码(定 ...

  4. LeetCode 212. 单词搜索 II(Trie树+DFS)

    1. 题目 给定一个二维网格 board 和一个字典中的单词列表 words,找出所有同时在二维网格和字典中出现的单词. 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中"相邻&qu ...

  5. mysql 相关搜索_MySQL单词搜索相关度排名

    一个单词搜索的相关度排名,这个例子演示了一个单词搜索的相关度排名计算. mysql> CREATE TABLE articles ( -> id INT UNSIGNED AUTO_INC ...

  6. 力扣—— 79/212. 单词搜索

    目录 79 单词搜索 212 单词搜索II 79 单词搜索 class Solution(object):#深度搜索def exist(self, board, word):self.flag=0se ...

  7. Leetcode 79.单词搜索

    Time: 20190901 Type: Medium 题目描述 给定一个二维网格和一个单词,找出该单词是否存在于网格中. 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中"相邻&q ...

  8. 益智java单词游戏_java实现单词搜索迷宫游戏

    本文实例讲述了java实现单词搜索迷宫游戏.分享给大家供大家参考.具体分析如下: 我们在杂志上,经常能够看到找单词的小游戏,在一个二维表格中,存在各种字母,我们可以从八个方向找单词.这个用计算机处理十 ...

  9. 【华为校招】【校招】【Java】单词搜索(DFS)

    ■ 题目描述 [单词搜索] 找到它是一个小游戏,你需要在一个矩阵中找到给定的单词. 假设给定单词 HELLOWORD,在矩阵中只要能找到 H->E->L->L->O->W ...

  10. LeetCode之单词搜索(回溯法求解)

    题目 给定一个 m x n 二维字符网格 board 和一个字符串单词 word .如果 word 存在于网格中,返回 true :否则,返回 false . 单词必须按照字母顺序,通过相邻的单元格内 ...

最新文章

  1. 打印循环换行_科学向日葵在线课堂 ——张老师讲Python 第八课 周而复始为循环2...
  2. CentOS6 修改主机名的规范步骤
  3. [Swift]LeetCode513. 找树左下角的值 | Find Bottom Left Tree Value
  4. 【caffe解读】 caffe从数学公式到代码实现5-caffe中的卷积
  5. C# WinForm 软件注册的实现
  6. excel如何在双引号里面引用变量
  7. Node.js 安装配置
  8. C++结构体作为函数参数传参
  9. Linux chmod
  10. Spring Cloud与Spring Boot版本匹配关系
  11. ViewHolder模式超简洁写法
  12. 人脸识别中常用的几种分类器
  13. [转]非模态对话框的特点与使用
  14. 兄弟,学点AI吗?2知识的确定性系统
  15. 更新一波,特殊福利 !
  16. 惠普m132nw清零方法_惠普HP打印机墨盒清零方法
  17. Cross-Modality Domain Adaptation
  18. Mysql 创建数据库\添加用户\用户授权
  19. 如何批量将 Txt 文本文件转换为 jpeg、png、bmp 图片
  20. 翻转课堂教学感受调查

热门文章

  1. python程序查询港澳通行证办理进度
  2. 【『茴』的四种写法】 C++11 map和unordered_map遍历方法
  3. 斯坦福大学《机器人学》-轨迹规划Trajectory planning
  4. VS2010设置VC6的字体样式及背景色、选中字高亮
  5. Latex 删除线 下划线 波浪线 文字颜色 下划引用编号; Latex 对图像排版, 去除subfigure中的(a) 等
  6. 智慧矿产、煤炭生产、煤矿分布、水泵、瓦斯抽采、抽放泵、抽采泵房、通风系统、主扇、压风系统、洒基地面、空气压缩机房、风包、总管、采面、支架、电机、运输皮带、运输石门、切眼顶抽巷、里快回风巷、Axure
  7. npm安装的坑浏览器代理
  8. 抽样分布:经常听到的卡方分布、t分布等的含义是啥?
  9. wps js宏脚本-文档的每一页用图片覆盖一部分
  10. Mybatis-plus sql注入以及防止sql注入