@Navneet, it works with multiple spaces between words.. And here is
the two line solution :)

import sys
print " ".join((sys.argv[1].split())[::-1])



On Thu, Jul 7, 2011 at 3:12 PM, Navneet Gupta <navneetn...@gmail.com> wrote:
> @Vishal, can you see if your program works well for more than single
> space between words? Not sure how split functions helps.
>
> BTW, Perl also is very strong language for string manipulations.
> (Specially designed for efficient string operations)
>
> On Thu, Jul 7, 2011 at 2:48 PM, Vishal Thanki <vishaltha...@gmail.com> wrote:
>> Off Topic:
>> Sorry for the diversion, but I was just wondering how easy it has
>> become to code in languages other than c. Here is the code i wrote for
>> the above mentioned problem in Python. It takes command line arg as
>> string. something like
>>
>> vishal@ubuntu:~/progs/python\ 02:45:07 PM >$ cat rev.py
>> #!/usr/bin/python
>> import sys
>> strn=""
>> for i in (sys.argv[1].split())[::-1]:
>>        strn+=i+" "
>> print strn
>>
>> vishal@ubuntu:~/progs/python\ 02:45:09 PM >$ ./rev.py "This is a new world"
>> world new a is This
>>
>> vishal@ubuntu:~/progs/python\ 02:47:15 PM >$
>>
>>
>>
>>
>>
>> On Thu, Jul 7, 2011 at 1:19 PM, Piyush Sinha <ecstasy.piy...@gmail.com> 
>> wrote:
>>> @Navneet....take a look at the solution below and tell if there is any bug
>>> in it...
>>>
>>> #include <string.h>
>>>
>>> typedef struct revll
>>> {
>>>         char s[100];
>>>         struct revll *next;
>>> }revll;
>>>
>>> revll *rev_str(char *a)
>>> {
>>>       char temp[100];
>>>       int i,len=strlen(a),j=0;
>>>       revll *head,*p;
>>>       head=NULL;
>>>       for(i=0;i<len;i++)
>>>       {
>>>                if(a[i]!=' ')
>>>                {
>>>                         temp[j++] = a[i];
>>>                }
>>>                else
>>>                {
>>>                    temp[j] = '\0';
>>>                    p = (revll *)malloc(sizeof(revll));
>>>                    p->next = head;
>>>                    strcpy(p->s,temp);
>>>                    head = p;
>>>                    j=0;
>>>                }
>>>       }
>>>       /*for last word*/
>>>       temp[j] = '\0';
>>>       p = (revll *)malloc(sizeof(revll));
>>>       p->next = head;
>>>       strcpy(p->s,temp);
>>>       head = p;
>>>       return head;
>>> }
>>>
>>> main()
>>> {
>>>       char a[100];
>>>       revll *head;
>>>       gets(a);
>>>       head = rev_str(a);
>>>       while(head)
>>>       {
>>>                  printf("%s->",head->s);
>>>                  head=head->next;
>>>       }
>>>       system("pause");
>>> }
>>>
>>>
>>>
>>> On Thu, Jul 7, 2011 at 9:10 AM, Navneet Gupta <navneetn...@gmail.com> wrote:
>>>>
>>>> @Piyush, could you elaborate your approach with Linked List?
>>>> From what i am getting, even with Linked List, you would need two
>>>> traversals at least.
>>>>
>>>> On Thu, Jul 7, 2011 at 2:07 AM, Piyush Sinha <ecstasy.piy...@gmail.com>
>>>> wrote:
>>>> > Can we do it using linked list if ONE TIME TRAVERSAL is a constraint??
>>>> >
>>>> > On 7/6/11, Tushar Bindal <tushicom...@gmail.com> wrote:
>>>> >> I read that solution.
>>>> >> But the same doubt as Navneet which I think you also raised i one of
>>>> >> your
>>>> >> posts on that thread
>>>> >>
>>>> >> On Wed, Jul 6, 2011 at 10:34 PM, Navneet Gupta
>>>> >> <navneetn...@gmail.com>wrote:
>>>> >>
>>>> >>> Saurabh,
>>>> >>>
>>>> >>> I understood your solution but wonder if it is purely single traversal
>>>> >>>
>>>> >>> In affect, you have a second traversal when you are popping the
>>>> >>> strings from stack to form the reverse order string.
>>>> >>>
>>>> >>> Though the second activity is less than O(n) i.e. O(#words in string)
>>>> >>> Nice solution, this way we can also get rid of extra spaces easily in
>>>> >>> the actual string if that is also to be done.
>>>> >>>
>>>> >>> On Wed, Jul 6, 2011 at 10:16 PM, saurabh singh <saurab...@gmail.com>
>>>> >>> wrote:
>>>> >>> > I have proposed my solution in one of the previous posts.Check the
>>>> >>> solution
>>>> >>> > there
>>>> >>> >
>>>> >>> > On Wed, Jul 6, 2011 at 10:10 PM, Tushar Bindal
>>>> >>> > <tushicom...@gmail.com>
>>>> >>> > wrote:
>>>> >>> >>
>>>> >>> >> good job
>>>> >>> >> but how can this be done in one traversal as asked on the Adobe
>>>> >>> Interview
>>>> >>> >> Questions thread.
>>>> >>> >>
>>>> >>> >>
>>>> >>> >>
>>>> >>> >> On Wed, Jul 6, 2011 at 9:49 PM, Navneet Gupta
>>>> >>> >> <navneetn...@gmail.com>
>>>> >>> >> wrote:
>>>> >>> >>>
>>>> >>> >>> I think somebody on this thread has asked this question but i am
>>>> >>> >>> not
>>>> >>> >>> able to find that.
>>>> >>> >>>
>>>> >>> >>> Question was if a string is like "my name is ram", then output
>>>> >>> >>> should
>>>> >>> >>> be "ram is name my".
>>>> >>> >>>
>>>> >>> >>> Wrote the code for same, so sharing.
>>>> >>> >>>
>>>> >>> >>> #include<iostream>
>>>> >>> >>> #include<string>
>>>> >>> >>> using namespace std;
>>>> >>> >>>
>>>> >>> >>> void SwapStringChars(string &str, int pos1, int pos2)
>>>> >>> >>> {
>>>> >>> >>>        char ch = str[pos1];
>>>> >>> >>>        str[pos1] = str[pos2];
>>>> >>> >>>        str[pos2] = ch;
>>>> >>> >>> }
>>>> >>> >>>
>>>> >>> >>> void reverseString(string &str, int left, int right)
>>>> >>> >>> {
>>>> >>> >>>        for(int i = left ; i <= left + (right-left)/2 ; i++)
>>>> >>> >>>                SwapStringChars(str, i, right + left -i));
>>>> >>> >>> }
>>>> >>> >>>
>>>> >>> >>> void reverseWordsInString(string &str)
>>>> >>> >>> {
>>>> >>> >>>        char space = ' ';
>>>> >>> >>>        int len = str.length();
>>>> >>> >>>        int startIndex = 0, endIndex = 0;
>>>> >>> >>>        while(endIndex < len - 1)
>>>> >>> >>>        {
>>>> >>> >>>                while(str[endIndex] != space && endIndex <
>>>> >>> len)endIndex++;
>>>> >>> >>>                reverseString(str, startIndex, endIndex-1);
>>>> >>> >>>                startIndex = endIndex;
>>>> >>> >>>                while(str[startIndex] == space)startIndex++;
>>>> >>> >>>                endIndex = startIndex;
>>>> >>> >>>        }
>>>> >>> >>> }
>>>> >>> >>>
>>>> >>> >>> int main()
>>>> >>> >>> {
>>>> >>> >>>        string str;
>>>> >>> >>>        cout<<"\nEnter enter the string :";
>>>> >>> >>>        getline(cin,str);
>>>> >>> >>>
>>>> >>> >>>        //Reverse whole string at once
>>>> >>> >>>        reverseString(str, 0, str.length() - 1);
>>>> >>> >>>
>>>> >>> >>>        //Reverse Individual words in string
>>>> >>> >>>        reverseWordsInString(str);
>>>> >>> >>>        cout<<str;
>>>> >>> >>>        cin.get();
>>>> >>> >>>        return 0;
>>>> >>> >>> }
>>>> >>> >>>
>>>> >>> >>> --
>>>> >>> >>> Regards,
>>>> >>> >>> Navneet
>>>> >>> >>>
>>>> >>> >>> --
>>>> >>> >>> 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.
>>>> >>> >>>
>>>> >>> >>
>>>> >>> >>
>>>> >>> >>
>>>> >>> >> --
>>>> >>> >> Tushar Bindal
>>>> >>> >> Computer Engineering
>>>> >>> >> Delhi College of Engineering
>>>> >>> >> Mob: +919818442705
>>>> >>> >> E-Mail : tushicom...@gmail.com
>>>> >>> >> Website: www.jugadengg.com
>>>> >>> >>
>>>> >>> >> --
>>>> >>> >> 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.
>>>> >>> >
>>>> >>> >
>>>> >>> >
>>>> >>> > --
>>>> >>> > Saurabh Singh
>>>> >>> > B.Tech (Computer Science)
>>>> >>> > MNNIT 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.
>>>> >>> >
>>>> >>>
>>>> >>>
>>>> >>>
>>>> >>> --
>>>> >>> Regards,
>>>> >>> Navneet
>>>> >>>
>>>> >>> --
>>>> >>> 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.
>>>> >>>
>>>> >>>
>>>> >>
>>>> >>
>>>> >> --
>>>> >> Tushar Bindal
>>>> >> Computer Engineering
>>>> >> Delhi College of Engineering
>>>> >> Mob: +919818442705
>>>> >> E-Mail : tushicom...@gmail.com
>>>> >> Website: www.jugadengg.com
>>>> >>
>>>> >> --
>>>> >> 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.
>>>> >>
>>>> >>
>>>> >
>>>> >
>>>> > --
>>>> > *Piyush Sinha*
>>>> > *IIIT, Allahabad*
>>>> > *+91-8792136657*
>>>> > *+91-7483122727*
>>>> > *https://www.facebook.com/profile.php?id=100000655377926 *
>>>> >
>>>> > --
>>>> > 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.
>>>> >
>>>> >
>>>>
>>>>
>>>>
>>>> --
>>>> Regards,
>>>> Navneet
>>>>
>>>> --
>>>> 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.
>>>>
>>>
>>>
>>>
>>> --
>>> Piyush Sinha
>>> IIIT, Allahabad
>>> +91-8792136657
>>> +91-7483122727
>>> https://www.facebook.com/profile.php?id=100000655377926
>>>
>>> --
>>> 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.
>>
>>
>
>
>
> --
> Regards,
> Navneet
>
> --
> 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