直接用for循环遍历,在遍历过程中用map存储每一个(arr[i],i),每一次遍历都需要查看map中是能根据arr[i]找到i,如果能,说明已经重复,用list保存长度,同时取出i,下一次需要从i+1开始,因为两个相同的数字之间可能存在多个不重复的数字,这段数字需要加到后面的计算中。最后直接对list排序,取出最大值即可。代码如下: import java.util.*; public class Solution { /** * 运行时间:237ms *.超过73.50% 用Java提交的代码 *.占用内存:26968KB *.超过98....