/*
   This code is from "Algorithms in C, Third Edition,"
   by Robert Sedgewick, Addison Wesley Longman, 1998."
 */
link reverse(link x)
  { link t, y = x, r = NULL;
    while (y != NULL)
      { t = y->next; y->next = r; r = y; y = t; }    
    return r;
  }
