您的位置:首页 > 其它

Letter Combinations Of A Number Phone

2015-12-08 11:39 267 查看
var arr = [
[],
[],
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
['j', 'k', 'l'],
['m', 'n', 'o'],
['p', 'q', 'r', 's'],
['t', 'u', 'v'],
['w', 'x', 'y', 'z']
];

var letterCombinations = function(digits) {
if (digits.length < 1) {
return [];
}

if (digits.length === 1) {
return arr[digits[0]];
}

var ret = [],
listNow = arr[digits[0]],
listBehind = letterCombinations(digits.substring(1)),
lenBehind = listBehind.length;

for (var i = 0; i < listNow.length; i++) {
for (var j = 0; j < listBehind.length; j++) {
ret[i * lenBehind + j] = listNow[i] + listBehind[j];
}
}

return ret;
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: