leetcode 面试题 16.20. T9键盘

面试题 16.20. T9键盘

难度中等30收藏分享切换为英文接收动态反馈

在老式手机上,用户通过数字键盘输入,手机将提供与这些数字相匹配的单词列表。每个数字映射到0至4个字母。给定一个数字序列,实现一个算法来返回匹配单词的列表。你会得到一张含有有效单词的列表。映射如下图所示:

leetcode 面试题 16.20. T9键盘_第1张图片

示例 1:

输入: num = "8733", words = ["tree", "used"]
输出: ["tree", "used"]

示例 2:

输入: num = "2", words = ["a", "b", "c", "d"]
输出: ["a", "b", "c"]

提示:

  • num.length <= 1000
  • words.length <= 500
  • words[i].length == num.length
  • num中不会出现 0, 1 这两个数字

通过次数10,687提交次数14,854

解答思路:

遍历单词,看看是不是可以出现的情况,注意输入的参数都是string就行了。

class Solution {
public:
    vector getValidT9Words(string num, vector& words) {
        vector rets;
        int table[26]={2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9,9};
        for(int i=0;i

执行结果:

通过

显示详情

添加备注

执行用时:12 ms, 在所有 C++ 提交中击败了95.98%的用户

内存消耗:11.5 MB, 在所有 C++ 提交中击败了94.12%的用户

通过测试用例:33 / 33

你可能感兴趣的:(C/C++编程序笔记,学习)