LeetCode & Q14-Longest Common Prefix-Easy
2024-08-27 02:46:44
String
Description:
Write a function to find the longest common prefix string amongst an array of strings.
Example
For strings
"ABCD"
,"ABEF"
and"ACEF"
, the LCP is"A"
For strings
"ABCDEFG"
,"ABCEFG"
and"ABCEFA"
, the LCP is"ABC"
测试用例想全面:
- 数组为空或为null
- 只有一个元素
- 全部完全匹配
- 匹配部分
my Solution:
public class Solution {
public String longestCommonPrefix(String[] strs) {
String prefix = "";
if (strs.length == 1) return strs[0];
else if (strs.length > 1) {
prefix = strs[0];
int index = 0;
Integer[] temp = new Integer[strs.length - 1];
for (int i = 1; i < strs.length; i++) {
for (index = 0; index < prefix.length() && index < strs[i].length(); index++) {
if (prefix.charAt(index) != strs[i].charAt(index)) {
break;
}
}
temp[i - 1] = index;
}
index = Collections.min(Arrays.asList(temp));
return prefix.substring(0, index);
}
return prefix;
}
}
如何从数组中获得最大/最小数:
Collections.min(Arrays.asList(array));
如何跳出多层嵌套循环:
boolean flag = false;
for (; !flag; ) {
for (; ;) {
if (condition) {
flag = true;
break;
}
}
}
我的解法还是太复杂,没有考虑到indexOf
的利用。
Best Solution:
public String longestCommonPrefix(String[] strs) {
if(strs == null || strs.length == 0) return "";
String pre = strs[0];
int i = 1;
while(i < strs.length){
while(strs[i].indexOf(pre) != 0)
pre = pre.substring(0,pre.length()-1);
i++;
}
return pre;
}
最新文章
- Kafka1 利用虚拟机搭建自己的Kafka集群
- java list中的对象去重原理
- asp.net 之 GC (垃圾回收机制)
- xcode设置 - App内存暴增
- POJ_3685_Matrix_(二分,查找第k大的值)
- Android NDK编程,引入第三方.so库
- [置顶] MyEclipse显示中文界面,在线安装教程
- javascript实现页面滚屏效果
- C++读取csv表格文件到vector
- Just for Today
- 查看三种MySQL字符集的方法(转)
- Retrofit2 原理解析
- Django 编写模板并渲染的示例
- 自适应手机网站meta name代码
- day61
- 【oneday_onepage】——China&#39;s Internet users grow to 591 million
- JQuery------各种版本下载
- WAF Bypass FUZZ小脚本
- centos7安装uwsgi报错
- 在Vue项目里面使用d3.js
热门文章
- ------ 开源软件 Tor(洋葱路由器,构建匿名网络的方案之一)源码分析——主程序入口点(二)------
- Kafka最佳实践
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
- asp.net WebApi 使用总结
- kubernetes1.9中部署dashboard
- Python3数据库模块(sqlite3,SQLite3)
- 转:命令passwd报错因inode节点处理记录
- ASP.NET MVC编程——控制器
- MySQL数据库学习四 存储引擎和数据类型
- 【Django】 初步学习