LeetCode实战:最长公共前缀
题目英文
Write a function to find the longest common prefix string amongst an array of strings.
If there is no common prefix, return an empty string “”.
Example 1:
Input: ["flower","flow","flight"]
Output: "fl"
Example 2:
Input: ["dog","racecar","car"]
Output: ""
Explanation: There is no common prefix among the input strings.
Note:
All given inputs are in lowercase letters a-z.
题目中文
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z。
算法实现
public class Solution {public string LongestCommonPrefix(string[] strs) {if (strs.Length == 0)return string.Empty;string str = strs[0];for (int i = 1; i < strs.Length; i++){str = Prefix(str, strs[i]);if (string.IsNullOrEmpty(str))break;}return str; }public string Prefix(string str1, string str2){int len1 = str1.Length;int len2 = str2.Length;int len = Math.Min(len1, len2);int i = 0;for (; i < len; i++){if (str1[i] != str2[i])break;}return i == 0 ? string.Empty : str1.Substring(0, i);}
}
实验结果
- 状态:通过
- 118 / 118 个通过测试用例
- 执行用时: 144 ms, 在所有 C# 提交中击败了 94.92% 的用户
- 内存消耗: 23.4 MB, 在所有 C# 提交中击败了 11.69% 的用户
相关图文
1. “数组”类算法
- LeetCode实战:三数之和
- LeetCode实战:求众数
- LeetCode实战:缺失的第一个正数
- LeetCode实战:快乐数
- LeetCode实战:寻找两个有序数组的中位数
2. “链表”类算法
- LeetCode实战:两数相加
- LeetCode实战:删除链表的倒数第N个节点
- LeetCode实战:合并两个有序链表
- LeetCode实战:合并K个排序链表
- LeetCode实战:两两交换链表中的节点
- LeetCode实战:旋转链表
- LeetCode实战:环形链表
3. “栈”类算法
- LeetCode实战:有效的括号
- LeetCode实战:最长有效括号
- LeetCode实战:逆波兰表达式求值
4. “队列”类算法
- LeetCode实战:设计循环双端队列
- LeetCode实战:滑动窗口最大值
- LeetCode实战:整数反转
- LeetCode实战:字符串转换整数 (atoi)
5. “递归”类算法
- LeetCode实战:爬楼梯
6. “字符串”类算法
- LeetCode实战:反转字符串
- LeetCode实战:翻转字符串里的单词
7. “树”类算法
- LeetCode实战:相同的树
- LeetCode实战:对称二叉树
- LeetCode实战:二叉树的最大深度
- LeetCode实战:将有序数组转换为二叉搜索树
8. “哈希”类算法
- LeetCode实战:两数之和
9. “搜索”类算法
- LeetCode实战:搜索二维矩阵
10. “动态规划”类算法
- LeetCode实战:最长回文子串
11. “数值分析”类算法
- LeetCode实战:x 的平方根
LeetCode实战:最长公共前缀相关推荐
- 52 - 算法- leetcode 14 最长公共前缀
// leetcode 14 最长公共前缀 str.sub(index1,index2)这个函数不清楚 // for(vector中的类class : vector) for 循环中的index 和 ...
- [模拟] leetcode 14 最长公共前缀
[模拟] leetcode 14 最长公共前缀 1.题目 题目链接 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例1: 输入: [& ...
- Leetcode 14.最长公共前缀(Longest Common Prefix)
Leetcode 14.最长公共前缀 1 题目描述(Leetcode题目链接) 编写一个函数来查找字符串数组中的最长公共前缀.如果不存在公共前缀,返回空字符串 "". 输入: ...
- LeetCode 14.最长公共前缀(字符串)
上一篇博客:Leetcode 13.罗马数字转整数(字符串) 写在前面:大家好!我是ACfun,我的昵称来自两个单词Accepted和fun.我是一个热爱ACM的蒟蒻.最近萌生了刷LeetCode的 ...
- LeetCode 14. 最长公共前缀
1. 题目 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1:输入: ["flower","flow ...
- Leetcode:最长公共前缀
Leetcode:最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀.如果不存在公共前缀,返回空字符串 "". 示例1: 给定 输入: [ "flower&quo ...
- 领扣(LeetCode)最长公共前缀 个人题解
编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow" ...
- [leetcode] 14. 最长公共前缀
14. 最长公共前缀 超级简单... class Solution { public:string longestCommonPrefix(vector<string> &strs ...
- leetcode题解14-最长公共前缀
问题描述 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow ...
- LeetCode 14. 最长公共前缀 (单指针水平扫描)
14. 最长公共前缀 题意: 找出一个字符串数组中所有字符串的最长公共前缀,如果不存在返回"" 思路: 假设数组第一个元素就是ans 从下标1开始遍历数组 用一个指针水平扫描ans ...
最新文章
- Java 设计模式之《观察者模式》
- Android中BroadcastReceiver组件详解
- u-boot支持LCD显示(基于TQ2440)
- J2ME最佳实践之联网开发-编写反应灵敏的联网提示界面
- orcl导入dmp语句_oracle中导入dmp数据注意事项
- java真数组_Java真数组
- 补码中的+0和-0为什么机器码相同?
- [转] 数学专业参考书整理推荐
- 「IT基础」计算机网络结构
- C语言求n的阶乘(n!)
- 轻松安装、卸载Linux软件
- 易语言GIF屏幕录制
- 汉诺塔问题的Java实现(递归与非递归)
- 360浏览器的404报错页
- .netframework3.5中TimeZoneInfo 类的使用
- 机械中计算机的应用研究,机械设计制造及其自动化中计算机技术的应用研究
- Shiro 之rememberMe / session
- 手游SDK到底是什么?
- 「 神器 」资源管理神器Clover,风一样的效率
- 爬取网易云歌曲榜单中网易云歌曲及其对应id xpath csv re requests python
热门文章
- cmd库的导入Java,在cmd命令窗口导入第三方jar包来运行java文件
- golang socket读写同时_epoll在Golang的应用
- 1055 The World‘s Richest
- linux mpp集群环境,Linux环境下,DM8-MPP两节点集群搭建
- AI芯片初创公司单纯卖芯片还是捆绑算法的商业模式更好?...
- c语言初学 循环 的灵活使用小案例
- easyui的datagrid
- context-param与init-param的区别与作用
- java 赋值,算术,一元操作符(翻译自Java Tutorials)
- ASP.NET,IIS7.0 上传大视频文件报错