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

市政道路毕业设计代做网站企业网络营销目标

市政道路毕业设计代做网站,企业网络营销目标,福州网站建设多少钱,512m内存做网站⭐️个人主页:小羊 ⭐️所属专栏:LeetCode 热题 100 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 全排列子集电话号码的字母组合组合总和括号生成单词搜索分割回文串N 皇后 全排列 全排列 class Solution {vector&l…
头像
⭐️个人主页:@小羊
⭐️所属专栏:LeetCode 热题 100
很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~

动图描述

目录

    • 全排列
    • 子集
    • 电话号码的字母组合
    • 组合总和
    • 括号生成
    • 单词搜索
    • 分割回文串
    • N 皇后


全排列

  • 全排列

在这里插入图片描述

class Solution {vector<vector<int>> res;vector<int> path;bool used[7] = {};int n;
public:vector<vector<int>> permute(vector<int>& nums) {n = nums.size();dfs(nums);return res;}void dfs(vector<int>& nums){if (path.size() == n){res.push_back(path);return;}for (int i = 0; i < n; i++){if (!used[i]){used[i] = true;path.push_back(nums[i]);dfs(nums);used[i] = false;path.pop_back();}}}
};

子集

  • 子集

在这里插入图片描述

class Solution {vector<vector<int>> res;vector<int> path;bool used[11] = {};int n;
public:vector<vector<int>> subsets(vector<int>& nums) {n = nums.size();dfs(nums, 0);return res;}void dfs(vector<int>& nums, int pos){res.push_back(path);for (int i = pos; i < n; i++){if (!used[i]){used[i] = true;path.push_back(nums[i]);dfs(nums, i + 1);used[i] = false;path.pop_back();}}}
};

电话号码的字母组合

  • 电话号码的字母组合

在这里插入图片描述

class Solution {string hash[10] = {"", "", "abc", "def","ghi","jkl","mno","pqrs","tuv","wxyz"};vector<string> res;string path;
public:vector<string> letterCombinations(string digits) {if (digits.empty()) return res;dfs(digits, 0);return res;}void dfs(string& digits, int pos){if (pos == digits.size()){res.push_back(path);return;}for (auto e : hash[digits[pos] - '0']){path += e;dfs(digits, pos + 1);path.pop_back();}}
};

组合总和

  • 组合总和

在这里插入图片描述

class Solution {vector<vector<int>> res;vector<int> path;int t;
public:vector<vector<int>> combinationSum(vector<int>& candidates, int target) {t = target;dfs(candidates, 0, 0);return res;}void dfs(vector<int>& candidates, int pos, int sum){if (sum == t){res.push_back(path);return;}else if (sum > t) return;for (int i = pos; i < candidates.size(); i++){path.push_back(candidates[i]);dfs(candidates, i, sum + candidates[i]);path.pop_back();}}
};

括号生成

  • 括号生成

在这里插入图片描述

class Solution {vector<string> res;string path;int left, right, m;
public:vector<string> generateParenthesis(int n) {m = n;dfs();return res;}void dfs(){if (right == m){res.push_back(path);return;}if (left < m){path += "(";left++;dfs();path.pop_back();left--;}if (right < left){path += ")";right++;dfs();path.pop_back();right--;}}
};

单词搜索

  • 单词搜索

在这里插入图片描述

class Solution {int dx[4] = {1, -1, 0, 0}, dy[4] = {0, 0, 1, -1};bool used[7][7] = {};int m, n;
public:bool exist(vector<vector<char>>& board, string word) {m = board.size(), n = board[0].size();for (int i = 0; i < m; i++){for (int j = 0; j < n; j++){if (board[i][j] == word[0]){if (dfs(board, word, i, j, 1)) return true;}}}return false;}bool dfs(vector<vector<char>>& board, string& word, int i, int j, int pos){if (pos == word.size()) return true;used[i][j] = true;for (int k = 0; k < 4; k++){int x = i + dx[k], y = j + dy[k];if (x >= 0 && x < m && y >= 0 && y < n && !used[x][y] && board[x][y] == word[pos]){if (dfs(board, word, x, y, pos + 1)) return true;}}used[i][j] = false;return false;}
};

分割回文串

  • 分割回文串

在这里插入图片描述

class Solution {vector<vector<string>> res;vector<string> path;
public:vector<vector<string>> partition(string s) {dfs(s, 0);return res;}void dfs(string& s, int pos){if (pos == s.size()){res.push_back(path);return;}for (int i = pos; i < s.size(); i++){if (check(s, pos, i)){path.push_back(s.substr(pos, i - pos + 1));dfs(s, i + 1);path.pop_back();}}}bool check(string& s, int l, int r){while (l < r && s[l] == s[r]){l++, r--;}return l >= r;} 
};

N 皇后

  • N 皇后

在这里插入图片描述

class Solution {vector<vector<string>> res;vector<string> path;bool checkcol[10], checkdig1[20], checkdig2[20];int m;
public:vector<vector<string>> solveNQueens(int n) {m = n;path.resize(n);for (int i = 0; i < n; i++) path[i].append(n, '.');dfs(0);return res;}void dfs(int row){if (row == m){res.push_back(path);return;}for (int col = 0; col < m; col++) // 尝试在当前行放Q{if (!checkcol[col] && !checkdig1[col - row + m] && !checkdig2[col + row]){checkcol[col] = checkdig1[col - row + m] = checkdig2[col + row] = true;path[row][col] = 'Q';dfs(row + 1);checkcol[col] = checkdig1[col - row + m] = checkdig2[col + row] = false;path[row][col] = '.';}}}
};

本篇文章的分享就到这里了,如果您觉得在本文有所收获,还请留下您的三连支持哦~

头像
http://www.dtcms.com/wzjs/525746.html

相关文章:

  • 中国互联网协会举报中心网站自然排名怎么优化
  • b2b网站如何做seo百度云登陆首页
  • 国内建网站知名企业外链群发平台
  • 个人服务器租赁seo实战论坛
  • 滨州正规网站建设价格seo优化技巧
  • 怎样下载门户网站最全bt搜索引擎入口
  • 深圳比较好的设计公司有哪些seo排名点击器原理
  • 外包做网站平台 一分钟网站app开发公司
  • redis做缓存的网站并发数周口网站制作
  • 制作网站首页seo优化好做吗
  • 旅游网站建设标书天津seo优化公司哪家好
  • 用哪个语言做网站比较好seo工资待遇 seo工资多少
  • 南昌做网站比较好的公司如何用html制作网页
  • 专门做网站seo网站关键词优化快速官网
  • 花都网站建设价格百度搜索引擎营销如何实现
  • 一个新网站怎么做seo百度精准搜索
  • 网站建设理念公司网站注册流程和费用
  • 营销型网站建设发难seo快排软件
  • 深圳企业网站建设服务网站权重查询
  • 腾网站建设seo快速排名服务
  • 网站建设开发方式包括一l丫站长素材音效下载
  • 信息型网站网页制作教程视频
  • wordpress 文章添加附件营销网站seo推广
  • 天津网络网站制作厦门seo管理
  • 企业推广类网站企业网站设计公司
  • 网店怎么开通seo网站推广平台
  • 简单的网站设计多少钱海南百度推广总代理
  • 外国ps素材网站网址查询注册信息查询
  • 北京市朝阳区社会建设办公室网站河北百度seo
  • 美女直接做的视频网站精准营销的三要素