GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — leetcode/LengthOfLongestSubstring.java at master · yugencoder/leetcode Expand file tree/ Copy pathLengthOfLongestSubstring.javaMore file actions 36 lines (32 loc) · 984 Bytes / Copy pathLengthOfLongestSubstring.javaFile metadata and controls36 lines (32 loc) · 984 Bytes 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 package leetcode; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; public class LengthOfLongestSubstring { public static void main(String[] args) { // TestCases LengthOfLongestSubstring lls = new LengthOfLongestSubstring(); int[] result = new int[3]; List<String> testcases = new ArrayList(); testcases = Arrays.asList("abcabcbb", "bbbbb", "pwwkew","abba"); for(String testcase:testcases) { System.out.println(lls.lengthOfLongestSubstring(testcase)+"\n"); } } public int lengthOfLongestSubstring(String s) { int start = 0, end = 0; int result = 0; Map<Character,Integer> history = new HashMap<>(); for (int i = 0; i < s.length(); i++) { if(history.containsKey(s.charAt(i))) { start = Math.max(history.get(s.charAt(i))+1,start); } result = (result < (end - start + 1))?(end - start + 1):result; history.put(s.charAt(i), i); end++; } return result; } } |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |