- function arrange(str) {
- str = str + '';
- if (str.length <= 1) {
- return [str];
- }
- var aStrRest = arrange(str.slice(1));
- var sFirst = str.charAt(0);
- var item;
- var aReturn = [];
- for (var i = 0, l = aStrRest.length; i < l; i++) {
- item = aStrRest[i];
- for (var j = 0, litem = item.length; j <= litem; j++) {
- aReturn.push(item.slice(0, j) + sFirst + item.slice(j));
- }
- }
- return aReturn;
- }
- console.log(arrange('bathome').join('\n'));
复制代码
|