vector——OJ题

2023-12-16 11:33:33

在这里插入图片描述


📘北尘_个人主页

🌎个人专栏:《Linux操作系统》《经典算法试题 》《C++》 《数据结构与算法》

??走在路上,不忘来时的初心


一、只出现一次的数字

1、题目讲解

在这里插入图片描述

2、思路讲解

在这里插入图片描述

3、代码实现

class Solution {
public:
    int singleNumber(vector<int>& nums) {
        int ret=0;
        for(auto& ch:nums)
        {
            ret^=ch;
        }
        return ret;
    }
};

二、杨辉三角

1、题目讲解

在这里插入图片描述

2、思路讲解

在这里插入图片描述

3、代码实现

class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> vv;
        vv.resize(numRows);
        for(int i=0;i<vv.size();i++)
        {
            vv[i].resize(i+1);
            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;
    }
};

三、删除有序数组中的重复项

1、题目讲解

在这里插入图片描述

2、思路讲解

在这里插入图片描述

3、代码实现

class Solution {
public:
    int removeDuplicates(vector<int>& nums) {
       int n=0;
       for(int i=0;i<nums.size();i++)
       {
           if(nums[i]!=nums[n])
           {
               nums[++n]=nums[i];
           }
       }
       return n+1;

    }
};

四、电话号码的字母结合

1、题目讲解

在这里插入图片描述

2、思路讲解

部分递归展开图

在这里插入图片描述

3、代码实现

class Solution {
public:
    const char* arr[10]={"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};
    void Combina(const string& digits,int i,string str,vector<string>& ret)
    {
       if(i==digits.size())
       {
           ret.push_back(str);
           return;
       }
       int m=digits[i]-'0';
       string s1=arr[m];
       for(auto ch:s1)
       {
           Combina(digits,i+1,str+ch,ret);
       }
    }
    vector<string> letterCombinations(const string& digits) {
        vector<string> ret;
        if(digits.empty())
        return ret;

        string str;
        Combina(digits,0,str,ret);
        return ret;
    }
};

文章来源:https://blog.csdn.net/2301_78995005/article/details/135026878
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。