please explain the logic behind your code :) On Sat, Jun 4, 2011 at 2:36 AM, Aakash Johari <[email protected]> wrote:
> @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.
>
--
Gaurav Aggarwal
SCJP
--
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>>
