做视频网站都需要什么软件下载电脑ps软件有免费的吗

张小明 2026/1/12 0:23:38
做视频网站都需要什么软件下载,电脑ps软件有免费的吗,临汾网站建设,怎么注册域名备案输入#xff1a;nums [4,4,3,2,1] 输出#xff1a;[[4,4]]注意点此题目的集合是无序的#xff0c;并且要求同一层之间的去重#xff0c;因此和之前有序的同一层去重#xff08;used数组#xff09;不同#xff0c;千万不能混淆。此题还需要对保证输出的组合是有序的nums [4,4,3,2,1]输出[[4,4]]注意点此题目的集合是无序的并且要求同一层之间的去重因此和之前有序的同一层去重used数组不同千万不能混淆。此题还需要对保证输出的组合是有序的因此怎么保证path是有序的。思路无序集合的树层之间去重可以使用unordered_set,记录每一层出现过的元素在for循环之前定义一个for循环是一层因此要在for循环之前定义。并且每一层都单独需要一个unorered_set来记录每一层是否重复因此不需要对unordered_set进行回溯。要保证有序就是要保证正在访问的元素nums[i] path数组中最后一个元素path.back可以表示最后一个元素。但是使用back要保证nums数组不能为空。代码回溯三部曲参数void backtracking(const vectorint nums, int startIndex)终止条件其实也可以不需要终止条件因为递归会一直遍历一直寻找合适的path即走完所有的for循环自动停止。if (path.size() 1) { result.push_back(path); } // 终止条件2如果路径长度等于原数组长度不再继续虽然这种情况很少 if (path.size() nums.size()) return;单层循环逻辑为什么unordered_set创建的位置在for循环之前为什么unordered_set不需要回溯nums.back使用的前提为什么if条件里面的剪枝操作是或的关系为什么是continue而不是break// 关键unordered_set用于记录本层元素是否重复使用 // 注意这个uset的生命周期只在本层递归中每次进入新的递归层都会重新定义 unordered_setint uset; // 遍历从startIndex开始的所有可能选择 for (int i startIndex; i nums.size(); i ) { // 剪枝条件1如果当前元素小于路径最后一个元素跳过不满足递增 // 注意需要先检查path是否为空否则path.back()会出错 // 剪枝条件2如果当前元素在本层已经使用过跳过去重 // 注意这里的去重是针对同一递归层不是针对整个递归树 if ((!path.empty() nums[i] path.back()) || uset.find(nums[i]) ! uset.end()) continue; uset.insert(nums[i]); path.push_back(nums[i]); // 递归从i1开始继续寻找注意是i1不是i因为不能重复使用同一索引的元素 backtracking(nums, i 1); path.pop_back(); // 注意uset不需要撤销因为它在栈上每次递归会重新创建 }整体代码class Solution { private: vectorvectorint result; // 存储所有递增子序列的结果 vectorint path; // 存储当前正在构建的递增子序列 // 回溯函数寻找所有递增子序列 // nums: 输入数组 // startIndex: 当前递归开始选择的起始索引 void backtracking(const vectorint nums, int startIndex) { // 终止条件1当路径长度大于等于2时保存当前递增子序列 // 题目要求子序列长度至少为2 if (path.size() 1) { result.push_back(path); } // 终止条件2如果路径长度等于原数组长度不再继续虽然这种情况很少 if (path.size() nums.size()) return; // 关键unordered_set用于记录本层元素是否重复使用 // 注意这个uset的生命周期只在本层递归中每次进入新的递归层都会重新定义 unordered_setint uset; // 遍历从startIndex开始的所有可能选择 for (int i startIndex; i nums.size(); i ) { // 剪枝条件1如果当前元素小于路径最后一个元素跳过不满足递增 // 注意需要先检查path是否为空否则path.back()会出错 // 剪枝条件2如果当前元素在本层已经使用过跳过去重 // 注意这里的去重是针对同一递归层不是针对整个递归树 if ((!path.empty() nums[i] path.back()) || uset.find(nums[i]) ! uset.end()) continue; uset.insert(nums[i]); path.push_back(nums[i]); // 递归从i1开始继续寻找注意是i1不是i因为不能重复使用同一索引的元素 backtracking(nums, i 1); path.pop_back(); // 注意uset不需要撤销因为它在栈上每次递归会重新创建 } } public: vectorvectorint findSubsequences(vectorint nums) { result.clear(); path.clear(); backtracking(nums, 0); return result; } };
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站上传照片失败做网站用什么地图好

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 构建一个NTP服务器智能推荐系统,要求:1) 内置国内常见NTP服务器IP池;2) 实时测试各服务器响应时间;3) 基于地理位置和网络状况的AI推…

张小明 2026/1/10 6:44:36 网站建设

移动网站建设作业edu域名网站

第一章:Open-AutoGLM水电燃气缴费系统概述Open-AutoGLM 是一套基于自动化大语言模型(AutoGLM)驱动的智能公共服务缴费系统,专为城市居民水电燃气费用缴纳场景设计。该系统融合自然语言理解、自动表单填充与多平台接口调度能力&…

张小明 2026/1/10 6:44:39 网站建设

电商平台网站定制廊坊seo软件

💡实话实说:用最专业的技术、最实惠的价格、最真诚的态度服务大家。无论最终合作与否,咱们都是朋友,能帮的地方我绝不含糊。买卖不成仁义在,这就是我的做人原则。摘要 在当今社会,物资管理的高效性和精准性…

张小明 2026/1/10 6:44:40 网站建设

招商网站建设多少钱如何做海外淘宝网站

10个降AI率工具推荐,专科生高效避坑指南 AI降重工具:高效避坑,让论文更“自然” 在当前高校论文审核日益严格的背景下,许多专科生开始关注如何有效降低AIGC率,避免因AI痕迹过重而被判定为抄袭或重复。随着AI写作工具的…

张小明 2026/1/10 6:44:40 网站建设

vps 网站权限工商注册网站官网

如何快速搭建ZeroTier网络控制器:ztncui完整部署指南 【免费下载链接】ztncui ZeroTier network controller UI 项目地址: https://gitcode.com/gh_mirrors/zt/ztncui ztncui是专为ZeroTier网络控制器设计的Web用户界面,让用户能够通过浏览器轻松…

张小明 2026/1/10 6:44:41 网站建设