矩阵中的路径 — 回溯法C++实现
发布日期:2021-10-02 06:27:35
浏览次数:2
分类:技术文章
本文共 523 字,大约阅读时间需要 1 分钟。
题目描述
请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。
例如
矩阵中包含一条字符串"bcced
“的路径,但是矩阵中不包含”abcb
"路径,因为字符串的第一个字符b
占据了矩阵中的第一行第二个格子之后,路径不能再次进入该格子。 求解思路
试探法 — 回溯法:
在矩阵中进行逐个试探,从给定字符串中的字符挨个匹配,若匹配不到则退回去重新匹配
PS: 关于回溯法,有不懂的童鞋推荐一看,相信你读完后你会完全了解回溯法
C++实现
class Solution { public: bool hasPath(char* matrix, int rows, int cols, char* str) { bool visted[rows*cols]; int i,j; for (i=0;i=0&&row =0&&col
运行时间:3ms占用内存:604k
转载地址:https://blog.csdn.net/Jeaten/article/details/108037514 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2024年03月28日 15时43分29秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
MySQL的数据类型
2019-04-28
HDU How Many Tables【并查集】
2019-04-28
POJ 1611 The Suspects【并查集】
2019-04-28
POJ 2524 Ubiquitous Religions【并查集】
2019-04-28
LeetCode C++ 9. Palindrome Number 简单
2019-04-28
洛谷 P1551 亲戚【并查集】
2019-04-28
洛谷 P3958 奶酪【并查集】
2019-04-28
LeetCode C++ 529. Minesweeper【DFS/BFS】中等
2019-04-28
LeetCode C++ 100. Same Tree【Tree/DFS/BFS】简单
2019-04-28
LeetCode C++ 206. Reverse Linked List【链表】简单
2019-04-28
LeetCode C++ 24. Swap Nodes in Pairs【链表】中等
2019-04-28
【算法学习】分块算法 莫队
2019-04-28
洛谷 P2709 小B的询问【莫队】
2019-04-28