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

相关推荐
minglie14 分钟前
gcc编译器汇总
linux
白菜欣2 小时前
Linux —《开发三件套:gcc/g++、gdb、make/Makefile 全解析》
linux·运维
万法若空2 小时前
C++ <memory> 库全方位详解
开发语言·c++
代码中介商2 小时前
C++ 类型转换深度解析:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++
青小莫2 小时前
C++之string(OJ练习)
开发语言·c++·stl
senijusene2 小时前
基于 imx6ull平台按键驱动开发:input子系统+中断子系统+platform总线
linux·驱动开发
6Hzlia2 小时前
【Hot 100 刷题计划】 LeetCode 199. 二叉树的右视图 | C++ DFS 逆序遍历
c++·leetcode·深度优先
-Marks-2 小时前
【C++编程】STL简介 --- (是什么 | 版本发展历程 | 六大组件 | 重要性缺陷以及如何学习)
开发语言·c++·学习·stl·stl版本
莎士比亚的文学花园2 小时前
Linux驱动开发(1)——系统移植
linux·运维·服务器