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

深圳网站设计专家乐云seo品牌深圳服装设计公司排名前十强

深圳网站设计专家乐云seo品牌,深圳服装设计公司排名前十强,网站自适应手机代码,住房和城乡建设部建造师网站按照国际象棋的规则#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上#xff0c;并且使皇后彼此之间不能相互攻击。 给你一个整数 n #xff0c;返回所有不同的 n 皇后问题 的解决方案。 每一种…按照国际象棋的规则皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上并且使皇后彼此之间不能相互攻击。 给你一个整数 n 返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案该方案中 Q 和 . 分别代表了皇后和空位。 示例 1 输入n 4 输出[[.Q..,...Q,Q...,..Q.],[..Q.,Q...,...Q,.Q..]] 解释如上图所示4 皇后问题存在两个不同的解法。 示例 2 输入n 1 输出[[Q]] 提示 1 n 9已经不是第一次遇到 N 皇后问题了依稀记得三年前的暑假刚接触 c的自己看着 N 皇后别人 AC 掉的代码天书一般留下的知识满眼的钦佩 愿与君共勉 事实上现在看来N 皇后问题相比其他的回溯算法题hard点在于它使用的是二维数组回溯的思路是不变的 void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择本层集合中元素树中节点孩子的数量就是集合的大小) {处理节点;backtracking(路径选择列表); // 递归回溯撤销处理结果} }参数选择 - 回溯终止条件 - 单层处理logic 值得一提的是 每列棋子放置的合理性判别即 isValid的函数实现。 AC /** lc appleetcode.cn id51 langcpp** [51] N 皇后*/// lc codestart class Solution { private:vectorvectorstring result;bool isValid(int row, int col, vectorstring chessboard, int n) {// 检查列for(int i 0; i row; i) {if(chessboard[i][col] Q)return false;}// 检查45°角for(int i row - 1, j col - 1; i 0 j 0; i--, j--) {if(chessboard[i][j] Q)return false;}// 检查135°角for(int i row - 1, j col 1; i 0 j n; i--, j) {if(chessboard[i][j] Q)return false;}return true;}void backtracking(int n, int row, vectorstring chessboard) {if(n row) {result.push_back(chessboard);return ;}for(int col 0; col n; col) {if(isValid(row, col, chessboard, n)) {chessboard[row][col] Q;backtracking(n, row 1, chessboard);chessboard[row][col] .;}}} public:vectorvectorstring solveNQueens(int n) {result.clear();std::vectorstd::string chessboard(n, std::string(n, .));backtracking(n, 0, chessboard);return result;} }; // lc codeend【补充】cpp 哈希表 C中哈希表可以分为以下几类 unordered_map 基于哈希表实现的 Key-Value 映射容器支持快速的插入、查找和删除操作。 下面是 unordered_map 常见的使用方式 #include unordered_map #include string using namespace std;int main() {// 创建一个空的unordered_mapunordered_mapstring, int umap;// 插入元素umap[apple] 10;umap.insert(make_pair(orange, 20));// 访问元素int apple_price umap[apple];int orange_price umap.at(orange);// 遍历元素for (auto it umap.begin(); it ! umap.end(); it) {cout it-first : it-second endl;}// 删除元素umap.erase(apple);umap.clear();return 0; }unordered_set 基于哈希表实现的无序集合容器支持快速的插入、查找和删除操作。和 unordered_map 相似只是不需要存储键值对。 下面是 unordered_set 常见的使用方式 #include unordered_set #include string using namespace std;int main() {// 创建一个空的unordered_setunordered_setstring uset;// 插入元素uset.insert(apple);uset.insert(orange);// 查找元素if (uset.find(apple) ! uset.end()) {cout Found apple! endl;}// 遍历元素for (auto it uset.begin(); it ! uset.end(); it) {cout *it endl;}// 删除元素uset.erase(apple);uset.clear();return 0; }unordered_multimap 基于哈希表实现的 Key-Value 映射容器支持插入重复的 Key每个 Key 对应多个 Value。和 unordered_map 相似只是可以插入重复 Key 和多个 Value。 下面是 unordered_multimap 常见的使用方式 #include unordered_map #include string using namespace std;int main() {// 创建一个空的unordered_multimapunordered_multimapstring, int umap;// 插入元素umap.insert(make_pair(apple, 10));umap.insert(make_pair(orange, 20));umap.insert(make_pair(apple, 30));// 访问元素auto range umap.equal_range(apple);for (auto it range.first; it ! range.second; it) {cout it-first : it-second endl;}// 遍历元素for (auto it umap.begin(); it ! umap.end(); it) {cout it-first : it-second endl;}// 删除元素umap.erase(apple);umap.clear();return 0; }unordered_multiset 基于哈希表实现的无序集合容器支持插入重复的元素。和 unordered_set 相似只是可以插入重复元素。 下面是 unordered_multiset 常见的使用方式 #include unordered_set #include string using namespace std;int main() {// 创建一个空的unordered_multisetunordered_multisetstring uset;// 插入元素uset.insert(apple);uset.insert(orange);uset.insert(apple);// 查找元素if (uset.count(apple) 0) {cout Found apple! endl;}// 遍历元素for (auto it uset.begin(); it ! uset.end(); it) {cout *it endl;}// 删除元素uset.erase(apple);uset.clear();return 0; }以上是哈希表的四种常见用法需要根据具体业务场景选择相应的容器。
http://www.hkea.cn/news/14584487/

相关文章:

  • 大足集团网站建设网站建设安全标准
  • 杭州百度整站优化服务wordpress自动发货
  • 网站建设套餐报体育健身网站建设
  • 做网站赚50万佛山网站建设锐艺a068
  • 上海最好网站建设公司锦州做网站哪家好
  • 湟源县公司网站建设常德网站建设网站优化
  • WordPress仿站助手有哪些网站设计比较好的公司
  • 部队网站设计网站平台搭建
  • 哈尔滨百度网站建设网站建设企业站
  • 洛阳西工区做网站哪家好百度贴吧网页版
  • 朝天门户网seo排名优化方法
  • 做的比较好的车载嗨曲网站连云港建设厅官方网站
  • 自动化科技产品网站建设郑州旅游网站建设
  • 芜湖酒店网站建设策划案格式模板和范文
  • 迈网科技 官方网站稻香村网站建设
  • 做视频网站教程国外产品推广平台
  • 打赏网站开发甘肃省和城乡建设厅网站
  • 友汇网网站建设管理后台网站网站建设简介联系方式
  • 济南网站建设选搜点网络网站开发网站模板设计
  • 百度免费网站申请wordpress 提示插件安装插件
  • 营销网站外包做服饰的有哪些网站
  • 网站建设 数据库连接源码做微信电影网站
  • 发布课程的网站模板wordpress联系表单的制作
  • 如何做网络推广网站做网站的图片Pc端和手机端的区别
  • 缙云做网站wordpress北欧控
  • 如何制作免费的公司网站网站关闭公告代码
  • 网站如何发布和推广百度seo一本通
  • 电商网站 解决方案网上免费发广告怎么发
  • 江门网站制作维护手机编辑网页
  • 如何建设优化一个网站网易企业邮箱注册流程