JAVA面試題筆試題-查詢一個字串不重複最長的串(個人方法)
- 面試題或者筆試題常問的演算法
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import org.apache.commons.lang.StringUtils;
/*
* 【Author】 愛吃早餐的程式設計師
* 【Time】2020年11月23日 下午2:28:17
* 【Function】查詢一個字串不重複最長的串
*/
public class Test5 {
public static void main(String[] args) {
String string = "suhdfuisehwerqiowo";
String findNotDupLong = findNotDupLong(string);
System.err.println("不重複最長的串:"+findNotDupLong);
}
private static String findNotDupLong(String string) {
if (StringUtils.isBlank(string)) {
return "沒有找到";
}
ArrayList<String> arrayList = new ArrayList<String>();// 用於存入符合條件的串
String[] split = string.split("");
for (int i = 0; i < split.length; i++) {
String begin = split[i];
for (int j = i; j < split.length; j++) {
if (begin.equals(split[j])) {
if (StringUtils.isNotBlank(string.substring(i, j))) {
arrayList.add(string.substring(i, j));
}
}
}
}
Collections.sort(arrayList, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
if (o1.length()>o2.length()) {
return -1;
}else {
return 1;
}
}
});
return arrayList.size()>0?arrayList.get(0):"沒有找到";
}
}
- 大家有什麼好的方法沒
相關文章
- (字串雜湊表)找到字串中不重複出現字元的最長子串長度字串字元
- 【每日一題】無重複字元的最長子串每日一題字元
- golang 計算最長不重複字串長度Golang字串
- 【谷歌面試題】找出字串中只包含兩種字元的最長子串谷歌面試題字串字元
- 兩個字串的最長公共子串字串
- 百度筆試題:找最小的不重複數筆試
- Amazon面試題:尋找最長迴文子串面試題
- 求字串中不含重複字元的最長子串字串字元
- java無重複字元的最長子串Java字元
- Java演算法面試題(003) 如何檢查一個字串是另外一個字串的旋轉字串Java演算法面試題字串
- 演算法練習:求字串的最長重複子串(Java實現)演算法字串Java
- js如何查詢字元處中第一個不重複的字元JS字元
- JS字串最長迴文查詢JS字串
- 最長迴文子串(百度筆試題和hdu 3068)筆試
- LeetCode題集-3 - 無重複字元的最長子串LeetCode字元
- 每天一道演算法題:無重複字元的最長子串演算法字元
- 查詢字串中第一個非重複字元的3種方法字串字元
- 面試題:編寫一個函式來查詢字串陣列中的最長公共字首。 如果不存在公共字首,返回空字串 ""。(c++實現)面試題函式字串陣列C++
- 無重複字元的最長子串問題 (移動視窗法求解)字元
- 生成固定長度不重複的隨機字串隨機字串
- 由一個博問學到的SQL查詢方法 (一道多對多關係查詢的面試題)SQL面試題
- java面試筆試題大彙總Java面試筆試
- 無重複字元的最長子串字元
- 今日面試題:最長迴文子串;及迴文分割分析面試題
- POJ 1743 Musical Theme (字尾陣列,求最長不重疊重複子串)陣列
- [LeetCode 刷題] 3. 無重複字元的最長子串 (Medium)LeetCode字元
- #leetcode刷題之路3-無重複字元的最長子串LeetCode字元
- HTML最新面試題(筆試面試題)HTML面試題筆試
- 用滑動視窗來解決最長無重複子串問題
- 【leetcode】【java】【3、無重複字元的最長子串】LeetCodeJava字元
- 【Java】留下沒有基礎眼淚的面試題,java初級面試筆試題Java面試題筆試
- LeetCode133:給定一個字串,找出最長的不具有重複字元的子串的長度。例如,“abcabcbb”不具有重複字元的最長子串是“abc”,長度為3。對於“bbbbb”,最長的不具有重複字元的子串是LeetCode字串字元
- Java面試試題Java面試
- 3 無重複字元的最長子串字元
- 記一次面試筆試題面試筆試
- 【Java面試題】54 去掉一個Vector集合中重複的元素Java面試題
- 一個使用JDBC按Date查詢查詢的問題JDBC
- 一個MySQL多表查詢的問題MySql