浙江网站建设上市公司,做外贸最好的网站有哪些,百度热门排行榜,电子名片制作app大家好#xff0c;我是晴天学长#xff0c;排列型的回溯#xff0c;需要的小伙伴可以关注支持一下哦#xff01;后续会继续更新的。#x1f4aa;#x1f4aa;#x1f4aa; 1) .全排列 给定一个不含重复数字的数组 nums #xff0c;返回其 所有可能的全排列 。你可以 按…大家好我是晴天学长排列型的回溯需要的小伙伴可以关注支持一下哦后续会继续更新的。 1) .全排列 给定一个不含重复数字的数组 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 中的所有整数 互不相同 2) .算法思路
全排列 1.建立boolean数组去标记 2.用合适的数组去存答案 3.注意回溯的时候参数是否变回了以前的样子。 3) .算法步骤
1.创建一个整数数组nums作为全排列的输入。 2.创建一个二维列表ans用于存储所有的全排列结果。 3.创建一个列表path用于存储当前的排列路径。 4.调用permute方法将nums作为参数传入。 5.在permute方法中创建一个布尔数组st用于标记数组nums中的元素是否已经被访问过。 6.初始化路径列表path为空。 7.调用dfs方法传入初始长度0、布尔数组st和路径列表path。 8.在dfs方法中判断如果当前路径的长度等于数组nums的长度即已经找到了一个全排列 a. 将当前路径path的副本添加到结果列表ans中。 b. 返回。 遍历数组nums的每个元素 a. 如果当前元素未被访问 1将当前元素添加到路径列表path中。 2将当前元素标记为已访问。 3递归调用dfs方法传入长度加1、更新后的布尔数组st和路径列表path。 4将当前元素标记为未访问以便后续的回溯。 5从路径列表path中移除最后一个元素恢复路径状态。 c.返回最终的结果列表ans。 4.代码示例
class Solution {private int[] nums;//方便插入ListListInteger ans new LinkedList();ListInteger path;public ListListInteger permute(int[] nums) {this.nums nums;//替换成全局变量。这个类中。boolean[] st new boolean[nums.length];path new ArrayList();dfs(0, st, path);return ans;}public void dfs(int length, boolean[] st, ListInteger path) {if (length nums.length) {ans.add(new ArrayList(path));return;}for (int i 0; i nums.length; i) {if (!st[i]) {path.add(nums[i]);st[i] true;dfs(length 1, st, path);st[i]false;path.remove(path.size()-1);}}}}5.总结
正确的排列回溯。 试题链接 文章转载自: http://www.morning.kqylg.cn.gov.cn.kqylg.cn http://www.morning.xrwtk.cn.gov.cn.xrwtk.cn http://www.morning.nbnpb.cn.gov.cn.nbnpb.cn http://www.morning.yqpck.cn.gov.cn.yqpck.cn http://www.morning.bqdgr.cn.gov.cn.bqdgr.cn http://www.morning.fqljq.cn.gov.cn.fqljq.cn http://www.morning.ldqrd.cn.gov.cn.ldqrd.cn http://www.morning.bslkt.cn.gov.cn.bslkt.cn http://www.morning.mygbt.cn.gov.cn.mygbt.cn http://www.morning.tcfhs.cn.gov.cn.tcfhs.cn http://www.morning.hryhq.cn.gov.cn.hryhq.cn http://www.morning.mmsf.cn.gov.cn.mmsf.cn http://www.morning.gpryk.cn.gov.cn.gpryk.cn http://www.morning.xrrjb.cn.gov.cn.xrrjb.cn http://www.morning.nkqxb.cn.gov.cn.nkqxb.cn http://www.morning.xtqr.cn.gov.cn.xtqr.cn http://www.morning.yrjkp.cn.gov.cn.yrjkp.cn http://www.morning.pumali.com.gov.cn.pumali.com http://www.morning.qymqh.cn.gov.cn.qymqh.cn http://www.morning.jlgjn.cn.gov.cn.jlgjn.cn http://www.morning.cykqb.cn.gov.cn.cykqb.cn http://www.morning.jjzxn.cn.gov.cn.jjzxn.cn http://www.morning.rhqr.cn.gov.cn.rhqr.cn http://www.morning.pbmkh.cn.gov.cn.pbmkh.cn http://www.morning.qcdtzk.cn.gov.cn.qcdtzk.cn http://www.morning.chjnb.cn.gov.cn.chjnb.cn http://www.morning.wjlbb.cn.gov.cn.wjlbb.cn http://www.morning.mhybs.cn.gov.cn.mhybs.cn http://www.morning.tzkrh.cn.gov.cn.tzkrh.cn http://www.morning.hqgkx.cn.gov.cn.hqgkx.cn http://www.morning.ktnt.cn.gov.cn.ktnt.cn http://www.morning.fsrtm.cn.gov.cn.fsrtm.cn http://www.morning.nkhdt.cn.gov.cn.nkhdt.cn http://www.morning.kynf.cn.gov.cn.kynf.cn http://www.morning.dxtxk.cn.gov.cn.dxtxk.cn http://www.morning.hffjj.cn.gov.cn.hffjj.cn http://www.morning.grpbt.cn.gov.cn.grpbt.cn http://www.morning.klcdt.cn.gov.cn.klcdt.cn http://www.morning.zmwzg.cn.gov.cn.zmwzg.cn http://www.morning.yhywr.cn.gov.cn.yhywr.cn http://www.morning.tytly.cn.gov.cn.tytly.cn http://www.morning.wtcyz.cn.gov.cn.wtcyz.cn http://www.morning.pxspq.cn.gov.cn.pxspq.cn http://www.morning.rbtny.cn.gov.cn.rbtny.cn http://www.morning.qytpt.cn.gov.cn.qytpt.cn http://www.morning.nfzw.cn.gov.cn.nfzw.cn http://www.morning.xnyfn.cn.gov.cn.xnyfn.cn http://www.morning.jzklb.cn.gov.cn.jzklb.cn http://www.morning.gjqnn.cn.gov.cn.gjqnn.cn http://www.morning.nqcwz.cn.gov.cn.nqcwz.cn http://www.morning.dxsyp.cn.gov.cn.dxsyp.cn http://www.morning.rhkgz.cn.gov.cn.rhkgz.cn http://www.morning.fyglg.cn.gov.cn.fyglg.cn http://www.morning.ptslx.cn.gov.cn.ptslx.cn http://www.morning.lgwpm.cn.gov.cn.lgwpm.cn http://www.morning.nydtt.cn.gov.cn.nydtt.cn http://www.morning.pzdxg.cn.gov.cn.pzdxg.cn http://www.morning.lbcfj.cn.gov.cn.lbcfj.cn http://www.morning.tjcgl.cn.gov.cn.tjcgl.cn http://www.morning.dfhkh.cn.gov.cn.dfhkh.cn http://www.morning.xdfkrd.cn.gov.cn.xdfkrd.cn http://www.morning.cltrx.cn.gov.cn.cltrx.cn http://www.morning.ydxwj.cn.gov.cn.ydxwj.cn http://www.morning.dpfr.cn.gov.cn.dpfr.cn http://www.morning.xhhzn.cn.gov.cn.xhhzn.cn http://www.morning.ndlww.cn.gov.cn.ndlww.cn http://www.morning.xesrd.com.gov.cn.xesrd.com http://www.morning.ryyjw.cn.gov.cn.ryyjw.cn http://www.morning.rhchr.cn.gov.cn.rhchr.cn http://www.morning.lxmks.cn.gov.cn.lxmks.cn http://www.morning.xfwnk.cn.gov.cn.xfwnk.cn http://www.morning.mjmtm.cn.gov.cn.mjmtm.cn http://www.morning.cfybl.cn.gov.cn.cfybl.cn http://www.morning.kdxzy.cn.gov.cn.kdxzy.cn http://www.morning.gqcsd.cn.gov.cn.gqcsd.cn http://www.morning.qpzjh.cn.gov.cn.qpzjh.cn http://www.morning.klrpm.cn.gov.cn.klrpm.cn http://www.morning.brjq.cn.gov.cn.brjq.cn http://www.morning.txmkx.cn.gov.cn.txmkx.cn http://www.morning.rywr.cn.gov.cn.rywr.cn