题目描述:
给定一个字符串,找出不含有重复字符的最长子串的长度。
示例:
给定 "abcabcbb"
,没有重复字符的最长子串是 "abc"
,那么长度就是3。
给定 "bbbbb"
,最长的子串就是 "b"
,长度是1。
给定 "pwwkew"
,最长子串是 "wke"
,长度是3。
解题思路:
在解题之前我们先要知道如何输入一个字符串,又不会浪费空间,在这里只介绍一种方法:
在头文件中添加<string>
定义string类型的str,然后直接cin>>str
接下来的代码就比较简单啦,我就直接写出来了
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
cout<<"Input str:"<<endl;
cin>>str;
int n;
n=str.length();
cout<<str[0];
for(int i=1;i<n;i++)
{
for(int j=i-1;j>=0;j--)
{
if(str[i]==str[j])
{
break;
}
if(j==0)
{
cout<<str[i];
}
}
}
return 0;
}
注:今天更了两篇博客,更不动了,明天在写这个题的简便方法