本文實例講述了JS實現的陣列全排列輸出演算法。分享給大家供大家參考。具體分析如下:
這段js程式碼對陣列進行全排列輸出,改進了一些老的程式碼
從n個不同元素中任取m(m≤n)個元素,依照一定的順序排列起來,叫做從n個不同元素中取出m個元素的一個排列。當m=n時所有的排列情況都叫全排列。
function permute(input) { var permArr = [], usedChars = []; function main(input){ var i, ch; for (i = 0; i < input.length; i++) { ch = input.splice(i, 1)[0]; usedChars.push(ch); if (input.length == 0) { permArr.push(usedChars.slice()); } main(input); input.splice(i, 0, ch); usedChars.pop(); } return permArr } return main(input); }; console.log(permute([5, 3, 7, 1]));
希望本文所述對大家的javascript程式設計有所幫助。