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

相关推荐
程序员-Benothing18 小时前
Vim编辑器从入门到精通:模式、快捷键、配置、插件
linux·运维·服务器
sm_9267870518 小时前
RFID 标签打印的技术实现要点与二次开发实践
java·大数据·前端·c++·编辑器
by2099918 小时前
C++ 多态:同一个基类接口,调用不同的函数
开发语言·c++·经验分享·多态
‎ദ്ദിᵔ.˛.ᵔ₎18 小时前
linux 进程信号 (上)
linux·服务器
15Moonlight19 小时前
Linux网络(02):Socket 编程 UDP
linux·网络·udp
colinu19 小时前
C++ 异步任务与线程生命周期:`std::async`、`future`、`thread`、`jthread` 与协作式退出
java·jvm·c++
wuminyu19 小时前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
longlongzihan19 小时前
链表找环:Floyd 判圈算法(LeetCode 141 & 142 )
c++·算法·leetcode·链表
liulilittle20 小时前
Linux 下 select 测试函数
linux·服务器·网络·数据库·c++·select·c
DongQiShanRen20 小时前
玄龙(上):TICK 主循环——意识心跳怎么跳
linux·jvm·数据库·人工智能·数据挖掘·rust