给你两个字符串,请你从这两个字符串中找出最长的特殊序列。
「最长特殊序列」定义如下:该序列为某字符串独有的最长子序列(即不能是其他字符串的子序列)。
子序列 可以通过删去字符串中的某些字符实现,但不能改变剩余字符的相对顺序。空序列为所有字符串的子序列,任何字符串为其自身的子序列。
输入为两个字符串,输出最长特殊序列的长度。如果不存在,则返回 -1。
解题思路
这道题题意也不清晰,其实讲了一大堆,就是想要a与b其中长度最长的数,只要有一个字符不同,就是独有的最长子序列,所以比较出a和b的长度,返回最长的即可,如果a和b相同,返回-1。
class Solution {
public int findLUSlength(String a, String b) {
//a和b相同,直接返回
if (a.equals(b)) return -1;
//返回最长的length
return a.length() > b.length() ? a.length() : b.length();
}
}