题目:求一个字符串的所有子串。例如字符串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);}
- }
- }
- }