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,到此结束,工作再忙,但也要坚持每天一题。

相关推荐
txinyu的博客4 分钟前
Linux 内存管理
linux·运维·开发语言·c++
珠穆峰10 分钟前
linux清理缓存命令“echo 3 > /proc/sys/vm/drop_caches”
java·linux·缓存
Xの哲學14 分钟前
Linux自旋锁深度解析: 从设计思想到实战应用
linux·服务器·网络·数据结构·算法
zzxxlty14 分钟前
kafka C++ 和 java端计算分区ID不一致排查
java·c++·kafka
Reenrr14 分钟前
C++学习
开发语言·c++·学习
晚风吹长发18 分钟前
深入理解Linux中用户缓冲区,文件系统及inode
linux·运维·算法·链接·缓冲区·inode
LuckyLay23 分钟前
Ubuntu配置多版本Java,自由切换
java·linux·ubuntu
m0_7482489424 分钟前
C++ 数据类型
java·jvm·c++
程序员-King.25 分钟前
day131—链表—反转链表Ⅱ(区域反转)(LeetCode-92)
leetcode·链表·贪心算法
SongYuLong的博客26 分钟前
openwrt 启动脚本
linux·运维·服务器·物联网