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

day28|93. 复原 IP 地址|Leetcode 78. 子集|90.子集II

Leetcode 93. 复原 IP 地址

链接:93. 复原 IP 地址

class Solution {
public:vector<string> res;string path;int pointNum = 0;vector<string> restoreIpAddresses(string s) {backtracking(0, s);return res;}void backtracking(int start, string s) {if (pointNum == 3) {string cur = s.substr(start);if (isValid(cur)) {res.push_back(path + cur);}return;}for (int i = start; i < s.length(); i++) {string cur = s.substr(start, i - start + 1);if (isValid(cur)) {int len = path.length();path += cur + ".";pointNum++;backtracking(i + 1, s);path = path.substr(0, len);pointNum--;} else {break;}}}bool isValid(string str) {if (str.empty() || str.length() > 3 || (str[0] == '0' && str.length() > 1))return false;int num = stoi(str);return num >= 0 && num <= 255;}
};

Leetcode 78. 子集

链接:78. 子集

class Solution {
public:vector<vector<int>> subsets(vector<int>& nums) {vector<vector<int>>res;vector<int>path;backTrack(nums,path,0,res);return res;}void backTrack(vector<int>&nums,vector<int>&path,int start,vector<vector<int>>&res){res.push_back(path);for(int i=start;i<nums.size();i++){path.push_back(nums[i]);backTrack(nums,path,i+1,res);path.pop_back();}}};

Leetcode 90.子集II

链接:90.子集II

class Solution {
private:vector<vector<int>> result;vector<int> path;void backtracking(vector<int>& nums, int startIndex, vector<bool>& used) {result.push_back(path);for (int i = startIndex; i < nums.size(); i++) {if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == false) {continue;}path.push_back(nums[i]);used[i] = true;backtracking(nums, i + 1, used);used[i] = false;path.pop_back();}}public:vector<vector<int>> subsetsWithDup(vector<int>& nums) {result.clear();path.clear();vector<bool> used(nums.size(), false);sort(nums.begin(), nums.end()); backtracking(nums, 0, used);return result;}
};
http://www.lryc.cn/news/322496.html

相关文章:

  • 怎样提升小程序日活?签到抽奖可行吗?
  • hive语法树分析,判断 sql语句中有没有select *
  • 【论文阅读】MSGNet:学习多变量时间序列预测中的多尺度间序列相关性
  • 智慧城市与数字孪生:共创未来城市的智慧生活
  • 【Ubuntu】FTP站点搭建
  • RK3228H is the same SoC as rk3328.
  • Golang 开发实战day04 - Standard Library
  • 程序员排查BUG指南
  • 【Vue】elementUI-MessageBox组件相关
  • 数据库运行状况和性能监控工具
  • CTF-辨别细菌
  • RuoYi-Vue开源项目2-前端登录验证码生成过程分析
  • error: C preprocessor fails sanity check
  • Kubernetes实战(三十一)-安装containerd
  • 使用docker搭建faiss向量数据库
  • 安卓面试题多线程 121-125
  • 什么是 HTTPS?它是如何解决安全性问题的?
  • C++入门(下)
  • 2024-03-20 作业
  • 【机器学习】深入解析线性回归模型
  • 新一代云原生数据库OLAP
  • JavaEE--小Demo
  • 一代大神跌落神坛——Java炸了!
  • 面试算法-64-零钱兑换
  • Java复习06 Spring 代码概念
  • 【研究僧总结】回顾第1095个创作日
  • QT(6.5) cmake构建C++编程,调用python
  • Java开发从入门到精通(九):Java的面向对象OOP:成员变量、成员方法、类变量、类方法、代码块、单例设计模式
  • 通过 Socket 手动实现 HTTP 协议
  • 探索数据结构:双向链表的灵活优势