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

网络编程就是做网站么在线优化网站

网络编程就是做网站么,在线优化网站,做的比较好的企业网站,广东省东莞阳光网题目 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2: 输入&#xff1a…

题目

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

示例 1:

输入:nums = [1,2,3]
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

示例 2:

输入:nums = [0,1]
输出:[[0,1],[1,0]]

示例 3:

输入:nums = [1]
输出:[[1]]

提示:

  • 1 <= nums.length <= 6
  • -10 <= nums[i] <= 10
  • nums 中的所有整数 互不相同

思路

        这道题我们需要通过不断尝试所有可能的组合,发现这个组合不满足条件或者已经排列完毕时,就返回上一步,接着尝试其他的可能性。从数组的第一个位置开始,把每个元素放到这个位置上,然后递归地处理数组的下一个位置,把剩下的元素放到这个位置。所有位置都被填满时,就得到了一个完整的排列。每次递归调用结束后,还要恢复数组的原来的样子,这样才能接着尝试其他的排列组合。

代码

class Solution {
public:void hs(vector<vector<int>>& res,vector<int>& r,int f,int l){//res是结果,r是现在的排列数组,f是当前位置,l是数组长度if(f==l)//已经有了一个完整的排列{res.emplace_back(r);return;}for(int i=f;i<l;i++){swap(r[i],r[f]);//交换i和first的位置hs(res,r,f+1,l);//处理下一个位置swap(r[i],r[f]);//恢复原来的顺序}}vector<vector<int>> permute(vector<int>& nums) {vector<vector<int>> res;hs(res,nums,0,(int)nums.size());return res;}
};

http://www.dtcms.com/wzjs/45607.html

相关文章:

  • 新网站如何做流量seo岗位职责
  • 耳机 东莞网站建设网站优化及推广方案
  • qq互联 网站建设不完善域名收录提交入口
  • wordpress 洛米seo 的原理和作用
  • 保山便宜的网站建设站长工具站长
  • 30天网站建设实录素材广州百度快速排名优化
  • 网络域名怎么看惠州seo建站
  • 我的世界怎么做神器官方网站seo快速排名首页
  • 物流网站建设费用必应bing搜索引擎
  • 北京便宜做网站长尾关键词挖掘爱站网
  • 可以自己设计logo的软件百度怎么优化网站排名
  • 软件培训骗局中国网络优化公司排名
  • 医联媒体网站建设google服务框架
  • 佛山网站建设价格如何做好网上销售
  • 招聘做网站搜索引擎营销的过程
  • 比较容易做流量的网站seo优化资源
  • 静海集团网站建设google play官网
  • 做交互设计的网站知乎推广渠道
  • 邯郸网络推广服务平台昆明seo外包
  • 网站颜色搭配网站seo外链代发
  • 做窗帘的厂家网站南京百度网站推广
  • 做网站别人点击能得钱吗怎么在线上推广自己的产品
  • 优秀的网站建设托管电商最好卖的十大产品
  • 邳州做网站的公司百度手机助手下载苹果版
  • 做移动网站优化优互联网app推广具体怎么做
  • 做一个公司网站真正免费的网站建站平台
  • 朔州网站建设优化网站统计器
  • 阳江网站seo公司网络推广工具有哪些
  • 网站上怎么做福彩卖家百度地图下载2022新版安装
  • 做写字楼用哪个网站更好陕西网络营销优化公司