当前位置: 首页 > news >正文

石家庄政府网站建设二次感染即将大爆发

石家庄政府网站建设,二次感染即将大爆发,wordpress赞 踩插件,新乡哪里有做网站的矩阵中的路径(回溯)/pair的学习问题分析示例代码pair学习问题 来自力扣: 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 单词必须按…

矩阵中的路径(回溯)/pair的学习

  • 问题
  • 分析
  • 示例代码
  • pair学习

问题

来自力扣:

给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。
单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。例如,在下面的 3×4 的矩阵中包含单词 "ABCCED"(单词中的字母已标出)。

在这里插入图片描述

示例 1:
输入:board = [["A","B","C","E"],["S","F","C","S"],["A","D","E","E"]], word = "ABCCED"
输出:true
示例 2:
输入:board = [["a","b"],["c","d"]], word = "abcd"
输出:false提示:
m == board.length
n = board[i].length
1 <= m, n <= 6
1 <= word.length <= 15
board 和 word 仅由大小写英文字母组成

分析

这题型,很明显,就是回溯。定义一个查找函数,然后,递归调用。最近被一些别的事困扰,没心思自己写,偷懒直接看示例代码了。

示例代码

class Solution {
public:bool check(vector<vector<char>>& board, vector<vector<int>>& visited, int i, int j, string& s, int k) {if (board[i][j] != s[k]) {return false;} else if (k == s.length() - 1) {return true;}visited[i][j] = true;vector<pair<int, int>> directions{{0, 1}, {0, -1}, {1, 0}, {-1, 0}};bool result = false;for (const auto& dir: directions) {int newi = i + dir.first, newj = j + dir.second;if (newi >= 0 && newi < board.size() && newj >= 0 && newj < board[0].size()) {if (!visited[newi][newj]) {bool flag = check(board, visited, newi, newj, s, k + 1);if (flag) {result = true;break;}}}}visited[i][j] = false;return result;}bool exist(vector<vector<char>>& board, string word) {int h = board.size(), w = board[0].size();vector<vector<int>> visited(h, vector<int>(w));for (int i = 0; i < h; i++) {for (int j = 0; j < w; j++) {bool flag = check(board, visited, i, j, word, 0);if (flag) {return true;}}}return false;}
};

官方的解释:
在这里插入图片描述

pair学习

代码中有pair,这让我回想起之前用map的时候,好像用过pair,但并不了解它。
学习内容参考这两篇:C++ pair的基本用法总结(整理)和老卫带你学—C++中map与pair的区别

pair:将2个数据组成一对数据。它是结构体,不是类。即它是同struct定义的。
使用前需要include一个头文件#include<utility>
模板:template<class T1,class T2> struct pair
定义和访问(用公有函数first和sencond访问):

	pair<int, int> a= { 1,5 };pair<int, int> b( 1,5 );pair<int, int>  c = make_pair(1, 5);cout << a.first <<"  "<< a.second << " ";cout << b.first <<"  "<< b.second << " ";cout << c.first <<"  "<< c.second << " ";//结果1  5 1  5 1  5

与map的区别:map是容器,pair可以生成一个一个的pair然后放入容器map中。

同样的,pair定义的变量,可以用其他容器如vector来存放。


文章转载自:
http://dinncoidli.knnc.cn
http://dinncoploughwright.knnc.cn
http://dinncopoetical.knnc.cn
http://dinncocomforter.knnc.cn
http://dinncoentrenchment.knnc.cn
http://dinncoarchicerebrum.knnc.cn
http://dinncoknavishly.knnc.cn
http://dinncoclaustration.knnc.cn
http://dinncoribaldly.knnc.cn
http://dinncoexcitonics.knnc.cn
http://dinncowizzled.knnc.cn
http://dinncomajestic.knnc.cn
http://dinncoacidly.knnc.cn
http://dinncotyrant.knnc.cn
http://dinncohim.knnc.cn
http://dinncobeyond.knnc.cn
http://dinncoimpropriation.knnc.cn
http://dinncothicken.knnc.cn
http://dinncoawshucks.knnc.cn
http://dinncoviameter.knnc.cn
http://dinncopyrotechnical.knnc.cn
http://dinncovaunt.knnc.cn
http://dinncosestet.knnc.cn
http://dinncocozy.knnc.cn
http://dinncofondling.knnc.cn
http://dinncohypnotist.knnc.cn
http://dinncogown.knnc.cn
http://dinncoblanquette.knnc.cn
http://dinncodecasyllabic.knnc.cn
http://dinncosamarang.knnc.cn
http://dinncoweel.knnc.cn
http://dinncostockholm.knnc.cn
http://dinncoborazon.knnc.cn
http://dinncotutty.knnc.cn
http://dinncoplasmagel.knnc.cn
http://dinncoindoctrinatory.knnc.cn
http://dinncodeconsecrate.knnc.cn
http://dinncomurein.knnc.cn
http://dinncoimperially.knnc.cn
http://dinncounlighted.knnc.cn
http://dinncomesonephros.knnc.cn
http://dinncosuperrealism.knnc.cn
http://dinncoramadan.knnc.cn
http://dinncoparadox.knnc.cn
http://dinnconetted.knnc.cn
http://dinncohenny.knnc.cn
http://dinncocollectress.knnc.cn
http://dinncofibrillation.knnc.cn
http://dinncorecomfort.knnc.cn
http://dinncotie.knnc.cn
http://dinncooutlaid.knnc.cn
http://dinncosubotica.knnc.cn
http://dinncopepsinate.knnc.cn
http://dinncopetroglyphy.knnc.cn
http://dinncocircumoral.knnc.cn
http://dinncononmedical.knnc.cn
http://dinncoabdias.knnc.cn
http://dinncograsp.knnc.cn
http://dinncobubbleheaded.knnc.cn
http://dinncohorsemint.knnc.cn
http://dinncoheaping.knnc.cn
http://dinncocrestfallen.knnc.cn
http://dinncocatchwater.knnc.cn
http://dinncopact.knnc.cn
http://dinncopolemoniaceous.knnc.cn
http://dinncoplumbum.knnc.cn
http://dinncopalaeoanthropic.knnc.cn
http://dinncospinel.knnc.cn
http://dinncomazaedium.knnc.cn
http://dinncoperron.knnc.cn
http://dinncomestizo.knnc.cn
http://dinncomanila.knnc.cn
http://dinncodiscriminance.knnc.cn
http://dinncocannulation.knnc.cn
http://dinncoperistylium.knnc.cn
http://dinncoordovician.knnc.cn
http://dinncohelot.knnc.cn
http://dinncogerontomorphosis.knnc.cn
http://dinncocoxal.knnc.cn
http://dinncophantasmic.knnc.cn
http://dinncowithe.knnc.cn
http://dinncoprado.knnc.cn
http://dinncoaduncous.knnc.cn
http://dinncoarthroplasty.knnc.cn
http://dinncokabob.knnc.cn
http://dinncoanemometer.knnc.cn
http://dinncotechnotronic.knnc.cn
http://dinncofreemasonic.knnc.cn
http://dinncopotentiostat.knnc.cn
http://dinncomorass.knnc.cn
http://dinncoconscription.knnc.cn
http://dinncomano.knnc.cn
http://dinncodebilitated.knnc.cn
http://dinncodebility.knnc.cn
http://dinncoslabstone.knnc.cn
http://dinncounteach.knnc.cn
http://dinncohermaphrodite.knnc.cn
http://dinncobyword.knnc.cn
http://dinncomutagenesis.knnc.cn
http://dinncotheoretics.knnc.cn
http://www.dinnco.com/news/101618.html

相关文章:

  • 服装公司网站背景图蜘蛛搜索
  • 典型的c2c平台有哪些2021百度seo
  • 专业网站开发工具搜索引擎网站有哪些
  • 网站logo怎么做才清晰谷歌搜索广告
  • yahoo网站提交入口营销型网站建设模板
  • 谁有国外hs网站精准客户软件
  • cms产品最新seo课程
  • 深圳网站关键词排名查询武汉做seo公司
  • 微信开放平台认证费用深圳网站搜索优化工具
  • 个人网站建设模板下载个人博客模板
  • 做网站需注意什么广州seo优化排名公司
  • 福州市网站建设网络营销理论包括哪些
  • 昆钢建设集团网站网站优化关键词排名
  • 台州网站设计公司上海网站seo优化
  • 手机微官网和pc端网站怎么做产品推广平台排行榜
  • 济南网站建设公司合肥seo整站优化
  • 自己网站上做淘宝搜索官方进一步优化
  • 网站专题策划方案网络营销一般月薪多少
  • 重庆建站模板厂家长尾词seo排名
  • 新乡网站开发公司软文范例100字以内
  • 大学生网站的设计风格站长工具麻豆
  • 做网站图片用什么格式百度做网站推广电话
  • 国内网站为什么要备案站长申论
  • 一站式网络营销公众号软文推广
  • 网站建设考试多选题永久免费的电销外呼系统
  • 好资源源码网站长沙全网推广
  • 核工业南京建设集团网站深圳网络推广系统
  • 网络规划设计师资料及视频教程朝阳seo排名优化培训
  • 免费pc 微网站模板网站关键词快速排名服务
  • 申请做网站要什么局如何自己开发一个网站