Code for Compression

I am doing it inplace

void convert(char* s,int len){
    int i=0;
    int count=1;
    int index=1; //*maintain the index where number is to be added*
    for(i=1;i<=len;i++){
       if(s[i]==s[i-1])
           count++;
       else{
           s[index-1]=s[i-1];*//put the char first like a3abbb . then this
step converts it into a3bbbb*
           s[index]= (count+'0');/*/convert the count integer into char  so
it becomes a3b4bb*
           count=1;
           index = index+2;
       }
    }
    s[index-1]='\0'*;//terminate the string* *(a3b4bb will become a3b4)*
}

On Mon, Oct 3, 2011 at 12:12 PM, rahul sharma <rahul23111...@gmail.com>wrote:

> check my code for compression..
>
> check if it is ok
> abc i/p
> o/p abc
>
> means if character has no count.but still present in string it is its only
> occurance.....plz check that code...
>
> #include<iostream.h>
> #include<conio.h>
> int main()
> {
>     cout<<"\nenter the string";
>     char str[30];
>     cin>>str;
>     int c=1;
>     for(int i=0;str[i];i++)
>     {
>             if(str[i+1]>='0' && str[i+1]<='9')
>             {
>             c=c+(str[i+1]-'0');
>             for(int j=1;j<c;j++)
>             cout<<str[i];
>               i++;
>
>             }
>
>            else
>            cout<<str[i];
>            c=1;
>
>
> }
>
>         getch();
>
>    }
>
>
>
> On Mon, Oct 3, 2011 at 12:08 PM, Rahul Verma <rahulverma....@gmail.com>wrote:
>
>> @rahul sharma
>>
>> for that you have to check that string is alphanumeric or not. if it is
>> alphanumeric then you have to call the function exapansion else you have to
>> call the compression function.
>>
>> and
>>
>> if the desired output for *abc *is *a1b1c1* then you have to call the 
>> *exapnsion
>> function* or if the desired output is *abc* then you have to add a
>> feature in the *compression function* i.e. in output the string have to
>> omit the 1's
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Algorithm Geeks" group.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msg/algogeeks/-/8olzJ_YJVWMJ.
>>
>> To post to this group, send email to algogeeks@googlegroups.com.
>> To unsubscribe from this group, send email to
>> algogeeks+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/algogeeks?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to algogeeks@googlegroups.com.
> To unsubscribe from this group, send email to
> algogeeks+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to