C++ 之LeetCode刷题记录(四)

😄😊😆😃😄😊😆😃

开始cpp刷题之旅,多学多练,尽力而为。

先易后难,先刷简单的。

14. 最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 ""。

示例 1:

输入:strs = "flower","flow","flight"

输出:"fl"

示例 2:

输入:strs = "dog","racecar","car"

输出:""

解释:输入不存在公共前缀。

方法:单字符匹配

个人感觉这种比较好理解。

以第一个字符串作为标准。

遍历第一个字符串,从头到尾取出每一个字符,将该字符与剩下的所有字符串中的该位置字符进行比较判断。

当某个字符出现不同时或者该字符索引大于某个字符串长度时,结束遍历。

cpp 复制代码
class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        string temp= strs[0];
        for(int i=0;i<temp.length();i++){
            for(int j=1; j<strs.size();j++){
                if(i>strs[j].length()||temp[i]!= strs[j][i]){
                    return temp.substr(0,i);
                };
            };
        };
        return temp;
    }
};

提交记录如下:

OK,到此结束,工作再忙,但也要坚持每天一题。

相关推荐
蒸蒸yyyyzwd15 分钟前
秋招学习笔记 day46
c++·八股
贵沫末1 小时前
Ubuntu——常用软件安装
linux·运维·ubuntu
Doraemomo1 小时前
Linux内核驱动开发——中断与定时器
linux·运维·驱动开发
2301_808414382 小时前
Linux中动静态库的理解
linux·运维·服务器
M78佐菲3 小时前
ARM学习笔记(11)
linux·arm开发·笔记·嵌入式硬件·学习
M78佐菲3 小时前
ARM学习笔记(10)
linux·arm开发·笔记·嵌入式硬件·学习
半仙白桑3 小时前
内核篇第十五讲:system-V共享内存
linux·共享内存·shmget·shmat·shmdt·shmctl
一条破秋裤3 小时前
Linux 线程创建:pthread_create 与基本回收
java·linux·运维
Cccp.1233 小时前
【leetcode】(七)前缀树和贪心算法
数据结构·leetcode·贪心算法
码匠许师傅4 小时前
【C++三方组件】cpp-httplib:一个头文件起 HTTP 服务
开发语言·c++·http