意义何在。。。
4个字符串就是4*3+4*3*2+4*3*2*1=60个
5个字符串就是5*4+5*4*3+5*4*3*2+5*4*3*2*1=320个
停留关注,期待有更好的方法
这个要用2层循环加一个递归!
方法a (数组 sz){
for(int i=1;i<sz.length-1;i++){
方法b (i,sz[i-1],sz);
}
}
//从每个字符串开始往后加出所有的
方法b (开始位置 s,字符串 st,数组 sz){
for(int j=s;j<sz.length;j++){
out(s+sz[j]);
}
s +=sz[s];
s++;
if(s>=sz.length)
return;
方法b (s,st,sz);//递归当前方法
}
其实这就是一个在C++中直接可以用string类型的字符串操作
下面是具体代码 我已经测试完成的 希望可以帮助到你的
还有什么问题可以问我的 希望大家共同能够进步
#include<iostream>
#include<string>
using namespace std;
int main()
{ string a1,a2,a3,a4;
a1="test";
a2="123";
a3="cnblog";
a4="com";
cout<<a1+a2<<' ';
cout<<a2+a1<<' ';
cout<<a4+a2<<' ';
cout<<a3+a4<<endl;
return 0;
}
怎么感觉像冒泡的排序比较啊。只不过把比较换成了字符串组合