求字符串的所有子串(Java/C++)

来源:互联网 发布:淘宝卖家交流 编辑:程序博客网 时间:2024/06/05 18:41

题目:求一个字符串的所有子串。例如字符串abc的子串有:a,ab,b,bc,c(注意一下子串的特点)

下面我将分别使用Java和C++实现算法来解决这个问题:

//C++实现

void getAllSubstrings(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<<substr(i,i+j);}         }              }}

//Java实现
void getAllSubstrings(String str){        if(str.length==0)                 return;         else{         for(int i=0;i<str.length;i++)        {           for(int j=1;j<str.length-1;j++)           {  System.println(str.substring(i,i+j);}         }              }}