精华内容
下载资源
问答
  • 寻找字符串最长子字符串
    2022-04-01 09:43:09

    描述:
       假如有一个字符串是trg32er43terjjk它的最长子字符串是terjjk
       微信入群一块学习技术:Day9884125

    查找字符串中最长子字符串

    package testClass;
    import java.util.ArrayList;
    import java.util.List;
    
    /**
     * 获取最长字符串
     * duay
     * 20220325
     */
    public class 
    更多相关内容
  • 本文实例讲述了JavaScript自定义函数实现查找两个字符串最长公共子串的方法。分享给大家供大家参考,具体如下: //查找两个字符串的最长公共子串 function findSubStr(s1,s2){ var S=sstr= ,L1=s1.length,L2=s2....
  • 给你一个字符串 s,请你返回 两个相同字符之间的最长子字符串的长度 ,计算长度时不含这两个字符。如果不存在这样的子字符串,返回 -1 。 子字符串 是字符串中的一个连续字符序列。 示例 1 输入:s = “aa” 输出:0...

    【题目】
    给你一个字符串 s,请你返回 两个相同字符之间的最长子字符串的长度 ,计算长度时不含这两个字符。如果不存在这样的子字符串,返回 -1 。
    子字符串 是字符串中的一个连续字符序列。
    示例 1
    输入:s = “aa”
    输出:0
    解释:最优的子字符串是两个 ‘a’ 之间的空子字符串。
    示例 2
    输入:s = “abca”
    输出:2
    解释:最优的子字符串是 “bc” 。
    示例 3
    输入:s = “cbzxy”
    输出:-1
    解释:s 中不存在出现出现两次的字符,所以返回 -1 。
    示例 4
    输入:s = “cabbac”
    输出:4
    解释:最优的子字符串是 “abba” ,其他的非最优解包括 “bb” 和 “” 。
    提示
    1 <= s.length <= 300
    s 只含小写英文字母
    【力扣-字符串专题-简单】
    https://leetcode-cn.com/problems/largest-substring-between-two-equal-characters/
    【代码】
    【C++】
    执行用时:
    0 ms, 在所有 C++ 提交中击败了100.00%的用户
    内存消耗:
    6.2 MB, 在所有 C++ 提交中击败了89.03%的用户

    class Solution {
    public:
        int small[26]={-1},big[26]={-1};
        int maxLengthBetweenEqualCharacters(string s) {
            for(int i=0;i<26;i++)
                small[i]=big[i]=-1;
            int maxnum=0;
            for(int i=0;i<s.size();i++)
                if(small[s[i]-'a']==-1)
                    small[s[i]-'a']=i;
                else
                    big[s[i]-'a']=i;
            for(int i=0;i<26;i++)
                if(small[i]!=-1&&big[i]!=-1&&big[i]-small[i]>maxnum)
                    maxnum=big[i]-small[i];
            return maxnum-1;
        }
    };
    
    展开全文
  • 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 ...

    给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。

    示例 1:

    输入:
    s = "abpcplea", d = ["ale","apple","monkey","plea"]

    输出:
    "apple"
    示例 2:

    输入:
    s = "abpcplea", d = ["a","b","c"]

    输出:
    "a"

    解题思路:首先应该循环给出的字符数组来找到其中满足条件的最长子序列,当当前找到的子序列大于所遍历的序列,跳过,当当前的最长子序列与数组序列长度相等,但是字典序小于数组序列,同样跳过,最后将符合上述条件的数组序列与给定字符串比较,判断是否满足子序列。

    class Solution {
        public String findLongestWord(String s, List<String> d) {
            String result = "";
            for(String tmp : d){
                int l1 = result.length(),l2 = tmp.length();
                if(l1 > l2 || (l1 == l2 && result.compareTo(tmp) < 0)){
                    continue;
                }
                if(isSubStr(s,tmp)){
                    result = tmp;
                }
            }
            return result;
        }
    
        private boolean isSubStr(String s,String tmp){
            int l1 = 0,l2 = 0;
            while(l1 < s.length() && l2 < tmp.length() ){
                if(s.charAt(l1) == tmp.charAt(l2)){
                    l1++;
                    l2++;
                }else{
                    l1++;
                }
            }
            if(l2 == tmp.length()){
                return true;
            }
            return false;
        }
    }

     

    展开全文
  • 本文实例讲述了Python实现针对给定字符串寻找最长非重复子串的方法。分享给大家供大家参考,具体如下: 问题: 给定一个字符串,寻找其中最长的重复子序列,如果字符串是单个字符组成的话如“aaaaaaaaaaaaa”那么...
  • 字符串中最长子串

    题目大意

    • 在一个字符串重寻找没有重复字母的最长子串。
    • 滑动窗口的右边界不断的右移,只要没有重复的字符,就持续向右扩大窗口边界。一旦出现了重复字符,就需要缩小左边界,直到重复的字符移出了左边界,然后继续移动滑动窗口的右边界。以此类推,每次移动需要计算当前长度,并判断是否需要更新最大长度,最终最大的值就是题目中的所求。
    package main
    
    import "fmt"
    
    // 滑动窗口
    // ASCII码,127位
    // 只要没有重复,freq数组该ASCII码的位值+1
    // 遇到重复,freq数组该位有值,则重复
    // 这时候,right +1 就是最大值
    // 依次遍历字符串,直到字符串结束
    func lengthOfLongestSubstring(s string) int {
    	if len(s) == 0 {
    		return 0
    	}
    	var freq [127]int
    	result, left, right := 0, 0, -1
    	for left < len(s) {
    		if right+1 < len(s) && freq[s[right+1]] == 0 {
    			freq[s[right+1]]++
    			right++
    		} else {
    			freq[s[left]]--
    			left++
    		}
    		result = max(result, right-left+1)
    	}
    	return result
    }
    func max(a int, b int) int {
    	if a > b {
    		return a
    	}
    	return b
    }
    
    func main() {
    	var str = "abcab"
    	fmt.Println(lengthOfLongestSubstring(str))
    }
    
    
    
    展开全文
  • eg: var s1 = 'abacda'; //4(5-0-1) var s2 = 'cc'; //0(1-0-1) var s3 = 'dskj' //-1 实现: function maxLengthSelf(s) { let max = -1;... for (let i of s) { if (s.lastIndexOf(i) - s.indexOf(i) - 1 >...
  • 查找最长子字符串(Python版本)
  • usr/bin/env python # encoding:utf-8 from __future__ import division """ __Author__:沂水寒城 Longest No Repeat SubString (LNRS) 给定一个字符串,求不重复字符的最长子字符串的长度。 举例说明: 已知...
  • 剑指offer.48
  • 给定一个字符串,查找最长子字符串的长度
  • [0…i]中的奇数字母为a e,则以i结尾的子字符串最长为:i - 奇数字母为a e的字符串第一次出现的位置。 细节处理: 1:用int中0…4位依次代表’a’ ‘e’… 'u’是否为奇数(1)偶数(0) 2:定义长度为(1<<5)...
  • **给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。 如:输入abcabcbb 输出3 因为无重复最长字符串是“abc” 第一次看见这个问题时网上查找发现没有竟然没有C语言实现的代码 于是自己写了代码以及思路...
  • // 给定的字符串 const str = 'abac' function outputMaxSubStrLen(str) { let result = 0; // 最终要返回的结果的初始值 let norepeatStr = ''; // 用于存放无重复子串 let len = str.length; // 字符串的...
  • 最长子字符串,无重复字符,Java实现 给定字符串s,找到最长子字符串的长度而不重复字符。 示例1:输入:s =“ abcabcbb”输出:3说明:答案为“ abc”,长度为3。 示例2:输入:s =“ bbbbb”输出:1说明:答案为...
  • 题目:输入一个字符串,求该字符串中不含重复字符的最长子 字符串的长度。例如,输入字符串"babcca",其最长的不含重复字符的子字符串是"abc",长度为3。 // 用两个指针来指向子字符串左边和右边 // 通过移动...
  • 我的观察是:非递减字符串中的回文是由重复字符组成的字符串(例如“4444”或“11”) 在字符i上,i的最后一个实例-i+1的第一个实例=重复字符的长度 跟踪最大密码长度,然后过滤掉小于最大密码长度的每个项目,以...
  • LongestStringDistinctCharacters 包含不同字符的最长子字符串
  • 给你一个字符串s,请你返回两个相同字符之间的最长子字符串的长度,计算长度时不含这两个字符。如果不存在这样的子字符串,返回-1。 子字符串是字符串中的一个连续字符序列。 示例 1: 输入:s = "aa" 输出:0 ...
  • 最长子字符串的长度

    2019-02-02 11:32:35
    * 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 * * @param $s *Array ( [a] =&gt; 1 [b] =&gt; 2 [d] =&gt; 12 [e] =&gt; 4 [r] =&gt; 5 [f] =&gt; 11 [s...
  • 给你一个字符串 s,请你返回 两个相同字符之间的最长子字符串的长度 ,计算长度时不含这两个字符。如果不存在这样的子字符串,返回 -1 。 子字符串 是字符串中的一个连续字符序列。 示例 1: 输入:s = "aa" ...
  • // 题目:输出两个相同字符串之间的最长子字符串 function maxLengthBetweenEqualCharacters(s) { // 1. 建立一个索引表(key为字符,值为数组) const hash = []; for (let i in s) { if (!hash[i]) { hash...
  • js实现查找两个相同字符串之间的最长子字符串长度
  • 题目 要求 求输入字符串的字符不重复的子字符串集合 首尾两个字符可重复 如果有多个结果长度相同,都输出(内容也相同的算一个) ...// 获取一条字符串的最长子字符串的集合(满足字符不相同,首尾可相同) class ...
  • 解释因为无重复字符的最长子字符串是"abc",所以其长度为3。解释因为无重复字符的最长子字符串是"b",所以其长度为1。解释因为无重复字符的最长子串是"wke",所以其长度为3。输入s="abcabcbb"输入s="pwwkew"输入s=...
  • C++求最长子字符串

    2020-03-16 11:00:39
    C++求最长子字符串 代码如下: #include <iostream> #include <string> #include <algorithm> using namespace std; int main() { string a,b,c,d="";int n,j,k,max=0;//记录最长的子回文字符串 ...
  • 解释: 因为无重复字符的最长子字符串是 “abc”,所以其长度为 3。 示例 2: 输入: s = “bbbbb” 输出: 1 解释: 因为无重复字符的最长子字符串是 “b”,所以其长度为 1。 示例 3: 输入: s = “pwwkew” 输出: 3 ...
  • 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。例如在“arabcacfr”中,最长的不包含重复字符的子字符串是“acfr”,长度为4 采用字典的方法,最后输出所有最长字符的列表 算法...
  • 让我们说有一个字符串“abc12345”(可能是任何!!!)并且有一个表mytable,其列为mycolumn of varchar(100).有些行以最后一个字符5结尾.有些行以最后一个字符45结尾.有些行以最后一个字符345结尾没有以最后一个字符2345...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,791
精华内容 4,716
关键字:

寻找字符串最长子字符串