[LeetCode][Java] Longest Common Prefix
题目:
Write a function to find the longest common prefix string amongst an array of strings.
题意:
写出一个函数。找到一组数组中的最长公共子串。
算法分析:
须要构建两重循环。第一层是最短子串的长度,还有一层是遍历字符串数组中的每一个成员。
brute force的想法,以第一个字符串为标准。对于每一个字符串从第一个字符開始,看看是不是和标准一致,假设不同,则跳出循环返回当前结果。否则继续下一个字符。
AC代码:
public String longestCommonPrefix(String[] strs)
{
if(strs == null || strs.length == 0)
return ""; int minLen=Integer.MAX_VALUE;
for(String str: strs)
{
if(minLen > str.length())
minLen = str.length();//找到这些字符串中的最短子串
}
if(minLen == 0) return ""; for(int j=0; j<minLen; j++)
{
char prev='0';
for(int i=0; i<strs.length ;i++)
{
if(i==0)
{
prev = strs[i].charAt(j);//每次仅仅取第一个字符串的头一个字符測试
continue;
} if(strs[i].charAt(j) != prev)//若全部的字符串的这个字符都相等,就取下一个字符,若不相等,就返回这个字符前面的那个些公共前缀
{
return strs[i].substring(0, j);
}
}
} return strs[0].substring(0,minLen);//全部字符串在最短字符串长度下前缀都相等
}
[LeetCode][Java] Longest Common Prefix的更多相关文章
- 【JAVA、C++】LeetCode 014 Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings. 解题思路: 老实遍历即可, ...
- Java [leetcode 14] Longest Common Prefix
小二好久没有更新博客了,真是罪过,最近在看linux的东西导致进度耽搁了,所以今晚睡觉前怒刷一题! 问题描述: Write a function to find the longest common ...
- [LeetCode] 14. Longest Common Prefix 最长共同前缀
Write a function to find the longest common prefix string amongst an array of strings. If there is n ...
- LeetCode 14. Longest Common Prefix字典树 trie树 学习之 公共前缀字符串
所有字符串的公共前缀最长字符串 特点:(1)公共所有字符串前缀 (好像跟没说一样...) (2)在字典树中特点:任意从根节点触发遇见第一个分支为止的字符集合即为目标串 参考问题:https://lee ...
- 【leetcode】Longest Common Prefix
题目简述: Write a function to find the longest common prefix string amongst an array of strings. 解题思路: c ...
- [LeetCode] 14. Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings. public class ...
- 【leetcode】Longest Common Prefix (easy)
Write a function to find the longest common prefix string amongst an array of strings. 思路:找最长公共前缀 常规 ...
- Leetcode 14——Longest Common Prefix
题目:Write a function to find the longest common prefix string amongst an array of strings. 很简单的一个描述,最 ...
- LeetCode(54)-Longest Common Prefix
题目: Write a function to find the longest common prefix string amongst an array of strings. 思路: 题意:找出 ...
随机推荐
- (转)ios应用导航模型
Eko - MoboCentre 本文将介绍iPhone的导航风格,同时,也一并了解能够组织好应用内容和工具的导航方式.对于一个应用来说,最基础的操作就是基于页面间简单的移动,每张页面都完成一个任务或 ...
- Solr5.0.0 DIH之增量索引
定时索引相关知识 增量更新需要配置个sql(deltaImportQuery.deltaQuery) deltaImportQuery="select * where id='${dih.d ...
- Lex与Yacc学习(三)之符号表
符号表 列举单词表的方式虽然简单但是不全面,如果在词法分析程序运行时可以构建一个单词表,那么就可以在添加新的单词时不用修改词法分析程序. 下面示例便利用符号表实现,即在词法分析程序运行时从输入文件中读 ...
- wei UI使用
1.前言 通过前面系列文章的学习与讲解,相信大家已经对微信的开发有了一个全新的认识.后端基本能够基于盛派的第三方sdk搞定大部分事宜,剩下的就是前端了.关于手机端的浏览器的兼容性问题相信一直是开发者们 ...
- 九度oj 题目1086:最小花费
题目描述: 在某条线路上有N个火车站,有三种距离的路程,L1,L2,L3,对应的价格为C1,C2,C3.其对应关系如下: 距离s 票价 0<S<=L1 ...
- spring配置druid连接池和监控数据库访问性能
Druid连接池及监控在spring配置如下: <bean id="dataSource" class="com.alibaba.druid.pool.DruidD ...
- 送外卖(codevs 2800)
题目描述 Description 有一个送外卖的,他手上有n份订单,他要把n份东西,分别送达n个不同的客户的手上.n个不同的客户分别在1~n个编号的城市中.送外卖的从0号城市出发,然后n个城市都要走一 ...
- 自己写了一个超级简便且傻瓜式的且功能强大的CSV组件(并且代码优雅,绝对没有一行多余的代码)
github地址: https://github.com/yangfeixxx/chipsCSV.git 解决的问题:解决了传统的CSV工具类对于实体类无法自动化封装为带表头的CSV文件的痛点,在读取 ...
- Codevs 2602 最短路径问题
时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold 题目描述 Description 平面上有n个点(n<=100),每个点的坐标均在-10000~10000之间. ...
- Android数据存储之SQLite数据库
Android数据存储 之SQLite数据库简介 SQLite的相关知识,并结合Java实现对SQLite数据库的操作. SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎. ...