博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编程题—矩阵中的路径
阅读量:2441 次
发布时间:2019-05-10

本文共 719 字,大约阅读时间需要 2 分钟。

题目描述

请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如

在这里插入图片描述
矩阵中包含一条字符串"bcced"的路径,但是矩阵中不包含"abcb"路径,因为字符串的第一个字符b占据了矩阵中的第一行第二个格子之后,路径不能再次进入该格子。

解题思路
1、首先遍历第一个字母,比如对于bcced来说,先找到第一个b,然后接下来再递归找c2、若bcced中的字母全部可以找到,则成功3、若某个字母不匹配,则返回false即可4、注意在遍历的时候需要将已经遍历过的位置做标记,我是直接将遍历过的字符置为1
通过代码
public class Solution {
public boolean hasPath(char[] matrix, int rows, int cols, char[] str) {
char [][] matrix1= new char[rows][cols]; int k=0; for(int i=0;i
rows-1||y<0||y>cols-1||matrix[x][y]!=str[0]) return false; else if((matrix[x][y]==str[0])&&(str.length==1)) return true; else {
char [] str1=new char[str.length-1]; for(int i=1,j=0;i

转载地址:http://sgcqb.baihongyu.com/

你可能感兴趣的文章
PostgreSQL 源码解读(44)- 查询语句#29(等价类相关数据结构)
查看>>
PostgreSQL 源码解读(48)- 查询语句#33(query_planner函数#9)
查看>>
PostgreSQL 源码解读(45)- 查询语句#30(query_planner函数#6)
查看>>
PostgreSQL 源码解读(47)- 查询语句#32(query_planner函数#8)
查看>>
PostgreSQL 源码解读(17)- 查询语句#2(查询优化基础)
查看>>
Windows Vista内置趣味实用工具大搜罗(转)
查看>>
FreeBSD安装文件系统(转)
查看>>
最简单FreeBSD网关方案(转)
查看>>
Windows 98 多用户的管理(转)
查看>>
更改Windows XP 的日期和时间(转)
查看>>
windows2000中的“秘密武器”(三)(转)
查看>>
Linux程序应用开发环境和工具经验谈(转)
查看>>
Linux办公一条龙之电子表格Calc(转)
查看>>
在NETBSD上配置ADSL+IPF+IPNAT(转)
查看>>
Windows 98 使用维护向导(转)
查看>>
用win2000收发传真(转)
查看>>
Linux办公一条龙之初识OpenOffice(转)
查看>>
Linux上安装GCC编译器过程(转)
查看>>
使用Windows XP 的任务计划(转)
查看>>
Linux分区工具的使用方法(转)
查看>>