插入法排序字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{string s[7],t;
int i,j;
s[0]="f";
s[1]="e";
s[2]="b";
s[3]="ee";
s[4]="ca";
s[5]="cb";
s[6]="hyf";
for(i=0;i<7;i++)
cout<<s[i]<<endl;
for(i=1;i<7;i++)
{ t=s[i];j=i;
while(j>0&&s[j-1]>t)
{s[j]=s[j-1];
j--;
}
s[j]=t;
}
/*for(i=1;i<7;i++)
{ t=s[i];j=i;
while(j>0&&t>s[j-1])
{s[j]=s[j-1];
j--;
}
s[j]=t;
}
倒序了 从大到小*/
cout<<"paixuhou"<<endl;
for(i=0;i<7;i++)
cout<<s[i]<<endl;
return 1;
}
冒泡法排序字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{string s[7],t;
int i,j,k;
s[0]="f";
s[1]="e";
s[2]="b";
s[3]="ee";
s[4]="ca";
s[5]="cb";
s[6]="hyf";
for(i=0;i<7;i++)
cout<<s[i]<<endl;
k=1;
for(i=0;i<6;i++)
{
for(j=1;j<6-i;j++)
if(s[j-1]>s[j])
{t=s[j-1];s[j-1]=s[j];s[j]=t;
k=0;
}
if(k) break;
}
cout<<"paixuhou"<<endl;
for(i=0;i<7;i++)
cout<<s[i]<<endl;
return 1;
}
先排好一个法排序字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{string s[7],t,temp;
int i,j,k;
s[0]="f";
s[1]="e";
s[2]="b";
s[3]="ee";
s[4]="ca";
s[5]="cb";
s[6]="hyf";
for(i=0;i<7;i++)
cout<<s[i]<<endl;
for(i=1;i<6;i++)
{k=0;
for(j=0;j<6-i;j++)
if(s[j]>s[j+1])
{temp=s[j];s[j]=s[j+1];s[j+1]=temp;
k=1;
}
if(!k)
break;
}
cout<<"paixuhou"<<endl;
for(i=0;i<7;i++)
cout<<s[i]<<endl;
return 1;
}