/**
*
*/
package hday01;
/**
* 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
*
* 思路:采用滑动窗口 快慢指针
* 意思就是 两个变量 i,j 一个头一个尾 分别指向字符串,将字符映射到数组上
*/
/**
* @author JZWen
*
*/
public class Demo01 {
public static int fun(String s) {
int arr[] = new int[500];
int max = 0;
int i=0, j=0;
while(i<s.length() && j<s.length()) {
if(arr[s.charAt(j)] == 0) {
arr[s.charAt(j)] = 1;
j++;
max = j-i > max ? j-i : max;
}else {
arr[s.charAt(i)] = 0;
i++;
}
}
return max;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(fun("jicnaiub"));
}
}