Last active
August 29, 2015 14:01
-
-
Save jikeytang/e6d1d1417b2ec570a204 to your computer and use it in GitHub Desktop.
[ Javascript ] - 20140521-题目3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
求0—7所能组成的奇数个数,不允许重复。 | |
比如:1,3,5组成的奇数个数为: | |
1,13,31,15,51,35,53,135,531,513. | |
共10个 | |
回复时注意加上下面这句话,才会有语法高亮或格式缩进。 | |
```javascript |
function getValue(num){
if( num > 9 ) num =9 ;
var num = Number(new Array(num+1).join(7)), // 创建一个最大的数字出来
arr = [];
//对这个数字循环
for(var i = 0; i < num; i ++){
var onOff = false ;
var temp = (i+'').split('');
onOff = temp.every(function(v){ return v <= num });
temp = Number(temp.join(''));
if( onOff && temp%2 != 0 ){
arr.push( temp )
}
}
return arr
};
console.log( getValue(3) )
// 对自己cpu好点 我就测试 0,1,2,3吧 TODO 下面递归排列算法部分来自github学习 如有版权问题,告诉楼主 楼主请直接删除
function Pem(arr, num) {
var r = [];
(function f(t, a, n) {
if (n == 0){
var vlaue = t.join('')-0;
if(vlaue%2 === 0){
return;
}
return r.push(t.join(''));
}
for (var i = 0, l = a.length; i < l; i++) {
f(t.concat(a[i]), a.slice(0, i).concat(a.slice(i + 1)), n - 1);
}
})([], arr, num);
return r;
}
var odds =Pem([0,1,2,3],4);
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
这个题目略难 想不起出来的说