C/C++教程

leetcode_521

本文主要是介绍leetcode_521,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

今天开始要多多更新博客,以提升书面表达能力。

 

先看题目:

 

 

今天的leetcode题是要在两个字符串中找一个最长的子字符串,并且这个子字符串只能由这两个字符串中的其中一个得到。

我将满足这个条件的字符串称为 最长不同子字符串

返回值是最长子字符串的长度。

这是一道脑筋急转弯题目

可以分如下两种情况进行讨论:

1.这两个字符串长度相同

在这个情况下,若两字符串相等,则找不到满足条件的子字符串,返回 -1,

若两字符串不等,则长度更长的字符串本身就是最长不同子字符串,返回长度更长字符串的长度。

2.这两个字符串长度不等

长度更长的字符串本身就是最长不同子字符串,返回长度更长字符串的长度。

 

这样一来就可以开始code了

class Solution {
    public int findLUSlength(String a, String b) {
        return a.equals(b) ? -1 : Math.max(a.length(),b.length());
    }
}

失败的方法只有一种,就是半途而费。

这篇关于leetcode_521的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!