题目:求一个字符串的所有子串。例如字符串abc的子串有:a,ab,b,bc,c(注意一下子串的特点)
下面我将分别使用Java和C++实现算法来解决这个问题:
//C++实现
void getAllSubstrings(std::string str){
if(str.size()==0)
return;
else{
for(int i=0;i<str.size();i++){
for(int j=1;j<str.size()-1;j++){
std::cout<<str.substr(i,i+j)<<std::endl;
}
}
}
}
//Java实现
void getAllSubstrings(String str){
if(str.length==0)
return;
else{
for(int i=0;i<str.length;i++)
{
for(int j=i;j<str.length-1;j++)
{ System.println(str.substring(i,i+j);}
}
}
}