344、reverse string
string reverseString(string s) {
int size=s.length();
for(int i=0;i<size/2;i++)
{
char tmp=s[i];
s[i]=s[size-i-1];
s[size-i-1]=tmp;
}
return s;
}
#include<iostream>
#include <cstring>
#include<string>
using namespace std;
string reverseString(string s) {
int size=s.length();
char *c=new char[size+1];
strncpy(c,s.c_str(),size+1);
for(int i=0;i<size/2;i++)
{
char tmp=c[i];
c[i]=c[size-i-1];
c[size-i-1]=tmp;
}
string r=string(c);
delete []c;
return r;
}
int main()
{
cout<<reverseString("Trap a rat! Stare piper at Star apart.");
return 0;
}
345.Reverse Vowels of a String
string reverseVowels(string s) {
int size=s.length();
char *c=new char[size+1];
strncpy(c,s.c_str(),size+1);
int *p=new int[size];
char*cc=new char[size];
char*v="AEIOUaeiou";
int vs=strlen(v);
int count=0;
for(int i=0;i<size;i++)
{
for(int j=0;j<vs;j++)
{
if(c[i]==v[j])
{
cc[count]=c[i];
p[count]=i;
count++;
break;
}
}
}
for(int i=0;i<count/2;i++)
{
char tmp=cc[count-i-1];
cc[count-i-1]=cc[i];
cc[i]=tmp;
}
for(int i=0;i<count;i++)
{
c[p[i]]=cc[i];
}
string r=string(c);
delete []c;
delete []cc;
delete []p;
return r;
}