Leetcode: Longest Substring Without Repeating Characters

原创 2016年08月31日 16:24:25
int lengthOfLongestSubstring(char* s) {
    int n=strlen(s);
    if(n==0){
        return 0;
    }
    int hash[256];
    memset(hash,-1,sizeof(hash));
    int max_=1;   //保存答案
    int i=-1,j=0;//i为当前无重复字符串的起始位置-1
    for(int j=0;j<n;j++){
       if(hash[s[j]]>i){ //如果出现了重复
           i=hash[s[j]]; //改变起始位置
       }
       if(j-i>max_){  //更新max_
           max_=j-i;
       }
       hash[s[j]]=j;   //更新最近的s[j]位置
    }
    return max_;
}

版权声明:本文为博主原创文章,欢迎指教~

LeetCode Longest Palindromic Substring 最长回文子字符串 两种方法分析解答

最难想的地方:P代表一个表,比较难想的就是P表的下标i和j代表原字符串中的两个前后下标s[i]和s[j]的位置。 如果P[i,j]为真,当且仅当si-1,si-2...sj-1,sj这一个子串都为pa...
  • kenden23
  • kenden23
  • 2013年11月23日 10:27
  • 2826

【LeetCode-面试算法经典-Java实现】【005-Longest Palindromic Substring(最长回文子串)】

【005-Longest Palindromic Substring(最长回文子串)】给定一个字符串S,找出它的最大的回文子串,你可以假设字符串的最大长度是1000,而且存在唯一的最长回文子串。动态规...
  • DERRANTCM
  • DERRANTCM
  • 2015年07月17日 06:42
  • 2379

3. Longest Substring Without Repeating Characters(求最长的不重复的连续的子序列。)

官网Given a string, find the length of the longest substring without repeating characters.Examples:Giv...
  • qq_16949707
  • qq_16949707
  • 2016年09月13日 15:26
  • 115

Leetcode全字符问题

目录 1、编号3 Longest Substring Without Repeating Characters 2、编号6 ZigZag Conversion 3、编号20 Valid Parent...
  • wangxiaojun911
  • wangxiaojun911
  • 2014年02月07日 08:09
  • 2833

HDU 1403 & POJ 2774 Longest Common Substring (后缀数组啊 求最长公共子串 模板题)

HDU 1403 & POJ 2774 Longest Common Substring (后缀数组啊 求最长公共子串 模板题)
  • u012860063
  • u012860063
  • 2015年03月04日 18:57
  • 927

常见算法问题之最长公共子串问题(Longest common substring problem)

对于寻找两个字符串的最长公共子字符串的问题,暴力搜索的方式的时间复杂度将高达O(n^3), 而通过后缀树的方式可将时间复杂度降低到O(n^2)。以下是我实现的C++源码:#include #incl...
  • jaye16
  • jaye16
  • 2017年02月16日 23:09
  • 314

总结最长回文子串的几种做法 Longest Palindrome Substring

题目是:找出一个字符串中的最长回文子串。 例如:abcbcbb 的最长回文子串是 bcbcb 首先一种常见的错误方法是把原字符串S倒转过来成为S‘,以为这样就将问题转化成为了求S和S’的最长公共子串的...
  • hellobinfeng
  • hellobinfeng
  • 2014年03月16日 03:21
  • 2997

【LeetCode-面试算法经典-Java实现】【003-Longest Substring Without Repeating Characters(最长非重复子字符串)】

【003-Longest Substring Without Repeating Characters(最长非重复子字符串)】给定一个字符串,找字符中的最大非重复子串用start记录当前处理的开始位置...
  • DERRANTCM
  • DERRANTCM
  • 2015年07月17日 06:35
  • 3510

LeetCode题解整理版(一)

Evaluate Reverse Polish Notation 逆波兰表达式求值,经典问题。 遇到数字入栈,遇到符号取栈顶的两个出来运算,再将结果入栈,最后栈里剩下的一个元素就是结果了。 ...
  • xualaleilei
  • xualaleilei
  • 2016年04月04日 17:30
  • 429

【算法设计与分析】3、二分搜索

/** * 书本:《算法分析与设计》 * 功能:二分搜索 * 1、设a[0:n-1]是一个已排好序的数组。请改写二分搜索算法,使得当搜索元素x不在数组中的时候,返回小于x的最大元素 * 的位置I和...
  • cutter_point
  • cutter_point
  • 2014年11月16日 18:40
  • 838
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Leetcode: Longest Substring Without Repeating Characters
举报原因:
原因补充:

(最多只允许输入30个字)