zoukankan      html  css  js  c++  java
  • Letter Combinations of a Phone Number

    遍历所有的可能。

     1 class Solution {
     2     private:
     3     vector<string> res;
     4     map<char,string> num;
     5 public:
     6    void initial()
     7    {
     8        
     9         num['2']="abc";
    10         num['3']="def";
    11         num['4']="ghi";
    12         num['5']="jkl";
    13         num['6']="mno";
    14         num['7']="pqrs";
    15         num['8']="tuv";
    16         num['9']="wxyz";  
    17    }
    18       
    19     void dfsdigits(int layer,int depth,string digits,string ans)
    20     {
    21         if(layer==depth)
    22        {
    23            res.push_back(ans);
    24            return ;
    25        }
    26        for(int i=0;i<num[digits[layer]].size();i++)
    27        {
    28            dfsdigits(layer+1,depth,digits,ans+num[digits[layer]][i]);
    29        }
    30     }
    31     vector<string> letterCombinations(string digits) {
    32         if(digits.empty()) return res;
    33         initial();
    34        
    35        dfsdigits(0,digits.size(),digits,"");
    36        return res;
    37     }
    38     
    39 };

    下面这种是循环,设中间变量

    class Solution {
    public:
       
        vector<string> letterCombinations(string digits) {
           vector<string> res;
           string num[10]={"0", "1", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};
           if(digits.empty()) return res;
           res.push_back("");
           for(int i=0;i<digits.size();i++)
           {
               vector<string> temp;
               for(int j=0;j<num[digits[i]-'0'].size();j++)
                 for(int k=0;k<res.size();k++)
                 temp.push_back(res[k]+num[digits[i]-'0'][j]);
                 res=temp;
           }
             
             
           return res;
        }
        
    };
  • 相关阅读:
    C#之流程控制
    UML画图总结以及浅谈UNL九种图
    UML视频总结
    英语总结
    UML coming
    那天我把“小四”拆了
    first 关于文档(总结)
    机房收费需求分析文档
    梦开始的地方
    WebRTC 开发实践:为什么你需要 SFU 服务器
  • 原文地址:https://www.cnblogs.com/daocaorenblog/p/5232297.html
Copyright © 2011-2022 走看看