leetcode | 杨辉三角 | 电话号码配对

电话号码的字母组合

class Solution {
    string _num[10] = {"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};

public:
    void Combinations(const string& digits,int di,string numcom,vector<string>& v)
    {
        if(di == digits.size())//结束条件
        {
            v.push_back(numcom);
            return ;
        }
        int num = digits[di] - '0';
        string str = _num[num];
        for(auto ch : str)
        {
            Combinations(digits,di+1,numcom+ch,v);//递归一定要注意numcom是+
            //不是+=;
        }
    }
    vector<string> letterCombinations(string digits) {
        vector<string> v;
        if(digits.size() == 0)
        {
            return {};
        }
        int di = 0;
        Combinations(digits,di,"",v);
        return v;
    }
};

杨辉三角

class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> vv;
        vv.resize(numRows,vector<int>());//进行初始化
        //进行的是每行初始化,因为这里表示的是顺序表里面是个顺序表
        for(int i = 0; i < vv.size(); i++)//初始化没列
        {
            vv[i].resize(i+1,0);
            vv[i][0] = vv[i][vv[i].size() - 1] = 1;
        }
        for(int i = 0 ;i < vv.size(); i++)
        {
            for(int j = 0; j < vv[i].size(); j++)
            {
                if(vv[i][j] == 0)
                {
                    vv[i][j] = vv[i-1][j-1] + vv[i-1][j];
                }
            }
        }
        return vv;
    }
};
相关推荐
尼尔森系4 小时前
排序与算法:希尔排序
c语言·算法·排序算法
AC使者4 小时前
A. C05.L08.贪心算法入门
算法·贪心算法
冠位观测者4 小时前
【Leetcode 每日一题】624. 数组列表中的最大距离
数据结构·算法·leetcode
yadanuof5 小时前
leetcode hot100 滑动窗口&子串
算法·leetcode
可爱de艺艺5 小时前
Go入门之函数
算法
武乐乐~5 小时前
欢乐力扣:旋转图像
算法·leetcode·职场和发展
a_j586 小时前
算法与数据结构(子集)
数据结构·算法·leetcode
清水加冰6 小时前
【算法精练】背包问题(01背包问题)
c++·算法
Ronin-Lotus7 小时前
蓝桥杯篇---IAP15F2K61S2串口
单片机·嵌入式硬件·职场和发展·蓝桥杯·c·iap15f2k61s2
慢一点会很快8 小时前
FRRouting配置与OSPF介绍,配置,命令,bfd算法:
算法·智能路由器·php·ospf