第 14 天 不断尝试直到成功( leetcode 017 )

JavaScript 解答

var letterCombinations = function (digits) {

    if (!digits.length) return [];

    var ans = [''];
    var map = ['0', '1', 'abc', 'def', 'ghi', 'jkl', 'mno', 'pqrs', 'tuv', 'wxyz'];

    for (var i = 0; i < digits.length; i++) {
        var str = map[digits[i]];
        var tmp = [];
        for (var j = 0; j < ans.length; j++) {
            var t = ans[j];
            for (var k = 0; k < str.length; k++) {
                tmp.push(t + str[k]);
            }
        }
        ans = tmp;
    }

    return ans;
};

Ruby 解答

def letter_combinations(digits)
  set=%w[abc def ghi jkl mno pqrs tuv wxyz]
  hash={}
  set.each_with_index { |chs, i| hash[(i+2).to_s]=chs }
  return [] if digits.length<1
  letter_combination_helper(hash, digits)
end

def letter_combination_helper(hash, digits)
  return hash[digits[0]].chars if digits.length==1
  pre=letter_combination_helper(hash, digits[0...-1])
  res=[]
  hash[digits[-1]].chars.each do |ch|
    pre.each { |st| res<<st+ch }
  end
  res
end

<<:  [Day15] LocalStorage and Event Delegation

>>:  [Day 15] - 初探永丰银行线上收款API - 丰收款 - HASH ID计算(2) +IV计算

铁人赛 Day1 -- 天哪~ 新手村的我到底该不该先学PHP !!

(以下有说错的,在劳烦各位大大告诉我,感谢各位学长姐) 其实一开始我在想说我的SQL资料库要用哪个语...

Day32 ATT&CK for ICS - Inhibit Response Function(4)

T0838 Modify Alarm Settings 攻击者修改设备的警告功能设定(如直接停止警告...

1.3 Design System - 包含哪些项目要做?

职场好榜样F大 F 对我来说是设计的前辈,在他入职後,我才有在设计上有比较大幅度的进步 不过在他身...

Rust-定义泛型结构

既然有泛型函数当然少不了泛型结构 struct S1<T1, T2> { n1: T1,...

Day 8:506. Relative Ranks

今日题目 题目连结:506. Relative Ranks 题目主题:Array, Sorting,...