题解 | #牛名生成器#

牛名生成器

https://www.nowcoder.com/practice/f82fe408de8f4fbdbc30162d6b3e65bb

题目考察的知识点:哈希

题目解答方法的文字分析:递归去遍历,当遍历时的di等于digits.size()时,说明digits的字符遍历完,可以将combineStr进行保留

本题解析所用的编程语言:c++

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param digits string字符串 
     * @return string字符串vector
     */
    const string _numToStr[10] = {"","","abc","def","ghi","jkl","mon","pqrs","tuv","wxyz"};
    void Combinations(const string& digits, size_t di, string combineStr, vector<string>& strV)
    {
        if (di == digits.size())
        {
            strV.push_back(combineStr);
            return;
        }
        int num = digits[di] - '0';
        string str = _numToStr[num];
        for (auto ch : str)
        {
            Combinations(digits, di + 1, combineStr + ch, strV);
        }
    }
    vector<string> letterCombinations(string digits) {
        // write code here
        vector<string> strV;
        if (digits.size() == 0)
            return strV;
        Combinations(digits, 0, "", strV);
        return strV;
    }
};

全部评论

相关推荐

bLanK的小号:建议自己写一个比较新颖的项目,比如思维导图,在线文档,仿造postman,仿造一个组件库
点赞 评论 收藏
分享
醒工硬件:1学校那里把xxxxx学院去了,加了学院看着就不像本校 2简历实习和项目稍微精简一下。字太多,面试官看着累 3第一个实习格式和第二个实习不一样。建议换行 4项目描述太详细了,你快把原理图贴上来了。比如可以这样描述:使用yyyy芯片,使用xx拓扑,使用pwm控制频率与占空比,进行了了mos/电感/变压器选型,实现了xx功能 建议把技术栈和你做的较为有亮点的工作归纳出来 5熟悉正反激这个是真的吗
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务