Advertisement
Guest User

Untitled

a guest
May 27th, 2015
261
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.36 KB | None | 0 0
  1. char **all_rotations(const char *str)
  2. {
  3.     char *buf, **rots;
  4.     int len = strlen(str), i;
  5.  
  6.     buf = calloc(2*len+1, sizeof(char));
  7.     strcpy(buf, str);
  8.     strcpy(buf+strlen(str), str);
  9.  
  10.     rots = malloc(len * sizeof(char*));
  11.     for (i = 0; i < len; ++i) {
  12.         rots[i] = calloc(len+1, sizeof(char));
  13.         strncpy(rots[i], buf+i, len);
  14.     }
  15.  
  16.     free(buf);
  17.     return rots;
  18. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement