算法摘录
2017-03-14 15:19
176 查看
1
题目:将一个数的个、十、百。。。位分别提取出来成为一个数字,然后相加。若和大于一位,则继续操作。否则得出结果。例如:
digital_root(16) => 1 + 6 => 7 digital_root(942) => 9 + 4 + 2 => 15 ... => 1 + 5 => 6 digital_root(132189) => 1 + 3 + 2 + 1 + 8 + 9 => 24 ... => 2 + 4 => 6 digital_root(493193) => 4 + 9 + 3 + 1 + 9 + 3 => 29 ... => 2 + 9 => 11 ... => 1 + 1 => 2
数学算法:
function digital_root(num){ return (num - 1) % 9 + 1; }
2
规则:将字符串中’-‘和’_’去掉,并将其后英文字符大写。function toCamelCase(str){ var regExp=/[-_]\w/ig; return str.replace(regExp,function(match){ return match.charAt(1).toUpperCase(); }); }