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

厦门做网站 厦门专业做网站的公司 我想做网站网站开发年收入

厦门做网站 厦门专业做网站的公司 我想做网站,网站开发年收入,网站建设工具开源,织里网站建设题目(leecode T46): 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 方法:全排列是数学中的基础问题,也是回溯算法能解决的经典问题。全排列因为每个元素都会…

题目(leecode T46):

给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。

方法:全排列是数学中的基础问题,也是回溯算法能解决的经典问题。全排列因为每个元素都会用到,所以不需要startIndex来控制递归的位置,但由于每个元素只能使用一次而不重复,所以需要使用used数组来表示当前元素是否被使用过了,使用过的话就跳过当前递归。分析三部曲:

1:传入参数与返回值:传入nums数组与使用数组used

2:终止条件:全排列要求每个元素都用到了,因此当path中收集的元素长度达到了nums.size时就可以收集结果并返回了

3:单层处理逻辑:单层中只需要判断一下当前的nums[i]是否是被使用过的,如果是的话就直接退出当前递归,否则的话就递归。同时记得在处理nums[i]元素时更新used数组的使用情况。

题解:

class Solution {
private:vector<int> path;vector<vector<int>> result;void backtracking(vector<int>& nums, vector<bool>& used){if(path.size() == nums.size()){                 //终止条件result.push_back(path);return;}for(int i = 0; i < nums.size(); i++){        //因为每个元素都要用到,无需startIndexif(used[i] == true) continue;path.push_back(nums[i]);used[i] = true;                          //注意及时更新used数组 backtracking(nums, used);path.pop_back();used[i] = false;}}
public:vector<vector<int>> permute(vector<int>& nums) {path.clear();result.clear();vector<bool> used(nums.size(), false);       //used数组刚开始默认是全false的backtracking(nums, used);return result;}
};
http://www.yayakq.cn/news/614726/

相关文章:

  • 网站建设价格标准渠道阿里手机网站开发框架
  • 网站开发语言识别南宁网站建公司
  • 做网站用什么软件初二网站快速注册
  • 怎么建一个网站卖东西seo包年推广
  • 当当网电子商务网站建设特点宁波市高等级公路建设指挥部网站
  • 购物商城html网站代码网站建设中什么是一栏
  • 平顶山市网站建设公司如何对网站进行管理
  • cpa怎么做网站做网站的每天打电话咋办
  • 西部数码网站管理助手 卸载网站建设成交话术
  • 南宁网站建站公司打电话叫人做网站
  • 移动通网站建设gateface做网站
  • 英德市建设及城乡管理局网站vi设计经典案例
  • 做一个英文网站域名解析二级域名
  • 网站设计评价指标海南公共招聘网
  • 网站申请空间杭州物流公司
  • 东莞南城外贸网站建设自己做网站都需要什么
  • 电商网站建设培训班济南电商网站建设
  • 手机网站开发设计做pc端网站特色
  • 淮安哪个做网站好点北京网站设计公司有哪些
  • 长治一般做一个网站需要多少钱自贡建设监督质量网站
  • 网站备案链接直接查看wordpress定时发布插件
  • 网站怎么做必须交钱吗网站开发用什么图片格式最好
  • 花都区水务建设管理中心官方网站百度推广合作
  • 电商网站取名wordpress 新页面类型
  • 深圳建设网站培训机构91大神网站建设
  • 网站没有收录怎么办阿里云1m服务器可以搭建网站
  • 建湖网站建设公司企业运营管理培训
  • 重庆免费微网站seo短期课程
  • 甘肃省住房和城乡建设部网站wordpress阶梯插件
  • wordpress更改静态网站优化公司哪家服务好