[Haskell-cafe] Determining all rotations (Was: Haskell problem please help)

Henning Thielemann iakd0 at clusterf.urz.uni-halle.de
Thu Dec 16 11:00:22 EST 2004


> imranazad wrote:
> > Hi,
> > 
> > im not very good with haskell, i barely know the basics, my coursework
> > requires me to genereate a vigenere square.......
> > well anyway at the moment im trying to define a functin all_rotations
> > which for any list returns the list of all its rotations, so far i've made
> > an attempt but it only rotates once....any ideas? i dont want the complete
> > solution just help thats all, much appreciated.
> > 
> > all_rotations :: [a] -> [[a]]
> > all_rotations [] = []
> > all_rotations (x:xs) = reverse  (x:xs) : []

'cycle' the list, then determine all of its suffixes with 'tails' and take
the first elements of each list. 



More information about the Haskell-Cafe mailing list