@Lalit: This requires a simple modification. You can take the following one:

#include <stdio.h>
>
> int main()
> {
>     unsigned long long int a = 0;
>     char str[50];
>     int i, j;
>
>     scanf ("%s", str);
>
>     for ( i = j = 0; str[i]; i++ ) {
>         if ( str[i] >= 'A' && str[i] <= 'Z' ) {
>             if ( (a & (1ULL << (str[i] - 'A'))) == 0 ) {
>                 a |= (1ULL << (str[i] - 'A'));
>                 str[j++] = str[i];
>             }
>         } else if ( str[i] >= 'a' && str[i] <= 'z' ) {
>             if ( (a & (1ULL << (str[i] - 'a' + 26))) == 0 ) {
>                 a |= (1ULL << (str[i] - 'a' + 26));
>                 str[j++] = str[i];
>             }
>         }
>     }
>
>     str[j] = '\0';
>
>     printf ("%s\n", str);
>
>     return 0;
> }
>
>
On Fri, Jun 3, 2011 at 12:25 PM, LALIT SHARMA <[email protected]> wrote:

> @Johari ,
>
> You have correctly mapped but the question demanded , to remove all
> repetition , though the string is still the same as it was given in input .
>
>
> On Fri, Jun 3, 2011 at 7:00 PM, Kunal Patil <[email protected]> wrote:
>
>> If you are not going to allow  extra space, you have to compromise on time
>> complexity..[?]
>> If you dont have your string already stored in a trie/hashmap usage of it
>> requires additional buffer.
>> Simple solution would be:
>> Sort given string using in-place sorting algorithm and then removal of
>> duplicate characters becomes O(n).
>> Total time complexity - O(nlogn) where n --> number of characters in the
>> input string.
>>
>>
>> On Thu, Jun 2, 2011 at 11:17 PM, Aakash Johari <[email protected]>wrote:
>>
>>> It was given that one or two extra variables are allowed. So I used a
>>> variable instead for mapping.
>>> It is simply mapping of each character in alphabet to a bit in the
>>> variable.
>>>
>>>
>>> On Thu, Jun 2, 2011 at 7:10 AM, Ashish Goel <[email protected]> wrote:
>>>
>>>> using bitmap, but  extra memory not allowed?
>>>>
>>>>
>>>> Best Regards
>>>> Ashish Goel
>>>> "Think positive and find fuel in failure"
>>>> +919985813081
>>>> +919966006652
>>>>
>>>>
>>>> On Thu, Jun 2, 2011 at 7:38 PM, Ashish Goel <[email protected]> wrote:
>>>>
>>>>> what is the logic, kindly explain
>>>>> Best Regards
>>>>> Ashish Goel
>>>>> "Think positive and find fuel in failure"
>>>>> +919985813081
>>>>> +919966006652
>>>>>
>>>>>
>>>>>
>>>>> On Sat, May 28, 2011 at 12:23 PM, Aakash Johari <[email protected]
>>>>> > wrote:
>>>>>
>>>>>> Following code works for [A-Za-z], can be extended for whole
>>>>>> character-set :
>>>>>>
>>>>>>> #include <stdio.h>
>>>>>>>
>>>>>>> int main()
>>>>>>> {
>>>>>>>     unsigned long long int a = 0;
>>>>>>>     char str[50];
>>>>>>>     int i;
>>>>>>>
>>>>>>>     scanf ("%s", str);
>>>>>>>
>>>>>>>     for ( i = 0; str[i]; i++ ) {
>>>>>>>         if ( str[i] >= 'A' && str[i] <= 'Z' ) {
>>>>>>>             if ( (a & (1ULL << (str[i] - 'A'))) == 0 ) {
>>>>>>>                 a |= (1ULL << (str[i] - 'A'));
>>>>>>>                 putchar (str[i]);
>>>>>>>             }
>>>>>>>         } else if ( str[i] >= 'a' && str[i] <= 'z' ) {
>>>>>>>             if ( (a & (1ULL << (str[i] - 'a' + 26))) == 0 ) {
>>>>>>>                 a |= (1ULL << (str[i] - 'a' + 26));
>>>>>>>                 putchar(str[i]);
>>>>>>>             }
>>>>>>>         }
>>>>>>>     }
>>>>>>>
>>>>>>>     return 0;
>>>>>>> }
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> On Fri, May 27, 2011 at 11:15 PM, saurabh singh <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> string getStringWithoutDuplicateChars(string input)
>>>>>>> {
>>>>>>>
>>>>>>> create_empty_trie_ds (say trie)
>>>>>>>
>>>>>>> integer count = 0;
>>>>>>>
>>>>>>> for_each_char_in_string (say ch)
>>>>>>> {
>>>>>>>
>>>>>>>     if(trie->contains(ch)) //if ch not there in ds then add it and
>>>>>>> return false otherwise return true
>>>>>>>     {
>>>>>>>          input.remove(count)
>>>>>>>      }
>>>>>>>
>>>>>>>    count++
>>>>>>> }
>>>>>>>
>>>>>>> return input
>>>>>>> }
>>>>>>>
>>>>>>> On Sat, May 28, 2011 at 11:32 AM, Rajeev Kumar <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Design an algorithm and write code to remove the duplicate
>>>>>>>> characters in a string without using any additional buffer.
>>>>>>>>  NOTE: One or two additional variables are fine.
>>>>>>>>  An extra copy of the array is not.
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thank You
>>>>>>>> Rajeev Kumar
>>>>>>>>
>>>>>>>> --
>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>> Groups "Algorithm Geeks" group.
>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>> To unsubscribe from this group, send email to
>>>>>>>> [email protected].
>>>>>>>> For more options, visit this group at
>>>>>>>> http://groups.google.com/group/algogeeks?hl=en.
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks & Regards,
>>>>>>> Saurabh
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Algorithm Geeks" group.
>>>>>>> To post to this group, send email to [email protected].
>>>>>>> To unsubscribe from this group, send email to
>>>>>>> [email protected].
>>>>>>> For more options, visit this group at
>>>>>>> http://groups.google.com/group/algogeeks?hl=en.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> -Aakash Johari
>>>>>> (IIIT Allahabad)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>  --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "Algorithm Geeks" group.
>>>>>> To post to this group, send email to [email protected].
>>>>>> To unsubscribe from this group, send email to
>>>>>> [email protected].
>>>>>> 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 [email protected].
>>>> To unsubscribe from this group, send email to
>>>> [email protected].
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/algogeeks?hl=en.
>>>>
>>>
>>>
>>>
>>> --
>>> -Aakash Johari
>>> (IIIT Allahabad)
>>>
>>>
>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google Groups
>>> "Algorithm Geeks" group.
>>> To post to this group, send email to [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected].
>>> 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 [email protected].
>> To unsubscribe from this group, send email to
>> [email protected].
>> For more options, visit this group at
>> http://groups.google.com/group/algogeeks?hl=en.
>>
>
>
>
> --
> Lalit Kishore Sharma,
>
> IIIT Allahabad (Amethi Capmus),
> 6th Sem.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>



-- 
-Aakash Johari
(IIIT Allahabad)

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

<<33D.gif>>

Reply via email to