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 <aakashj....@gmail.com>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 <ashg...@gmail.com> 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 <ashg...@gmail.com> 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 
>>> <aakashj....@gmail.com>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 <saurabh.n...@gmail.com
>>>> > 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 <
>>>>> rajeevprasa...@gmail.com> 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 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.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> 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 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.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> -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 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.
>>
>
>
>
> --
> -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 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.

<<33D.gif>>

Reply via email to