ALLInterview.com :: Home Page KalAajKal.com
 Advertise your Business Here     
Browse  |   Placement Papers  |   Company  |   Code Snippets  |   Certifications  |   Visa Questions
Post Question  |   Post Answer  |   My Panel  |   Search  |   Articles  |   Topics  |   ERRORS new
   Refer this Site  Refer This Site to Your Friends  Site Map  Bookmark this Site  Set it as your HomePage  Contact Us     Login  |  Sign Up                      
tip   SiteMap shows list of All Categories in this site.
Google
 
Categories >> Code-Snippets >> Programming-Code >> C-Code
 
 
 
Question
Given an array of characters which form a sentence of 
words, give an efficient algorithm to reverse the order of 
the words (not characters) in it. 
 Question Submitted By :: Maggy
I also faced this Question!!     Rank Answer Posted By  
 
Answer
#include"stdio.h"
#include"stdlib.h"

int reverse(char *string, char delimiter)
{
  char *src, *dest;
  char *temp = string;

  while( *temp )
  {
    if (*temp == delimiter)
    {
      temp++;
      continue;
    }

    src=dest=temp;
    while ( (*(dest+1) != delimiter) &&
            ( *(dest+1) != '\0' )) dest++;

            //( *(dest+1) != '\n' ) &&
    temp=dest+1;
    while( dest > src )
    {
      char tmp = *dest;
      //*dest -- = *src;
      *dest = *dest-- *src;
      //*src++=tmp;
      *src = *src++ tmp;
    }
  }
  return 0;
}

int main()
{
    char name[] = "vinod kumar dhochak";
    printf("%s\n",name);
    reverse(name,' '); /* space as delimiter,Reverse Words 
*/
    printf("%s\n",name);
    reverse(name,'\n'); /* Reverse Complete Sentence */
    printf("%s\n",name);
}
 
0
Vinod Kumar
 
View All Answers
 
 
 
 
 
   
Copyright Policy  |  Terms of Service  |  Help  |  Site Map 1  |  Articles  |  Site Map  |   Site Map  |  Contact Us interview questions urls   External Links 
   
Copyright © 2007  ALLInterview.com.  All Rights Reserved.

ALLInterview.com   ::  Forum9.com   ::  KalAajKal.com