题解 | #没有重复项数字的全排列#
没有重复项数字的全排列
https://www.nowcoder.com/practice/4bcf3081067a4d028f95acee3ddcd2b1
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param num int整型一维数组 * @return int整型二维数组 */ function permute( num ) { // write code here let result = [] let record =[] let bt = function(){ if(record.length==num.length){ let tmp=Array.from(new Set(record)) if(tmp.length==num.length){ result.push([...record]) } }else{ for(let i = 0;i<num.length;i++){ record.push(num[i]) bt() record.pop() } } } bt() return result } module.exports = { permute : permute };
直接回溯暴力枚举所有情况,在result.push前判断有无重复