LeetCode字符串问题汇总!

一、LeetCode-3、无重复字符的最长子串
LeetCode字符串问题汇总!_第1张图片
  • 解题思路:这里利用容器的contains方法,来方便的判断是否已经存在字符,将字符串的每个字符拿出来添加,看容器中是否存在该字符,这里需要注意的是,要删除的是该字符之前的所有字符,而不是直接将容器清空!!。
public int lengthOfLongestSubstring(String s) {
       int result = 0;
        List ls = new ArrayList();
        for (int i = 0; i < s.length(); i++) {
            String str=new String(new char[] {s.charAt(i)});
            
            if (ls.contains(str)) {
                if (resultls.size()?result:ls.size();
    }
二、LeetCode-14、最长公共前缀
  • 解题思路:首先取出来第一个字符串,利用while循环遍历,直到循环体中的字符串以str开头。
  • 注意:这里的while循环使用的太巧妙了!!
 public String longestCommonPrefix(String[] strs) {
        if(strs.length == 0){
            return "";
        }
        String str = strs[0];
        for(int i = 1; i < strs.length; i++){
            while(strs[i].indexOf(str) != 0){
                str=str.substring(0, str.length() - 1);
            }
        }
        return str;
    }

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-common-prefix/comments/

你可能感兴趣的:(LeetCode字符串问题汇总!)