最长无重复子数组
最长无重复子数组
import java.util.*;
public class Solution {
/**
*
* @param arr int整型一维数组 the array
* @return int整型
*/
public int maxLength (int[] arr) {
// write code here
//最大长度为max,初始化为0
//从数组第0个开始,贪吃,直到有重复元素,和max比较,如果大于max,把这个数组的长度赋予max
//判断字符串是否有重复元素,遍历字符串放入map,map的key的长度和字符串的长度不一致,则说明有重复元素
if(arr.length==0){
return 0;
}
if(arr.length==1){
return 1;
}
int max = 1;
List<Integer> ls = new ArrayList<Integer>();
Map<Integer,Integer> map = new HashMap<Integer,Integer>();
for(int i=0; i<arr.length; i++){
ls.clear();
map.clear();
ls.add(arr[i]);
map.put(arr[i],i);
for(int j=i+1; j<arr.length; j++){
if(map.containsKey(arr[j])){
if(map.size()>max){
max = map.size();
}
break;
}
ls.add(arr[j]);
map.put(arr[j],j);
if(j==arr.length-1){
if(map.size()>max){
max = map.size();
}
}
}
}
return max;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix