#include <stdio.h>
#include <stdlib.h>#include <assert.h>#include <iostream>#include <string>using namespace std;//删除字符串中的数字并压缩字符串。如字符串”abc123de4fg56”处理后变为”abcdefg”。注意空间和效率。//(下面的算法只需要一次遍历,不需要开辟新空间,时间复杂度为O(N))//111aaa//aaa111void swap(char &a ,char &b){ int temp;temp=a;a=b;b=temp;}void ZipString(char a[]){ char* begin=a;char* end=a;while(*end!='\0'){ while(*begin>='a'&&*begin<='z')begin++;end=begin;while(*end>='0'&&*end<='9')end++;if(*end!='\0')swap(*begin,*end);}*begin='\0';}int main(){ char a[]="1111abc12gghjkll78513de4fg56";//char a[]="12a"; char *b=a;ZipString(a);while(*b!='\0'){ cout<<*b;b++;}return 0;}