On 2004-12-16 at 17:00+0100 Henning Thielemann wrote:
> 
> > 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.

playing with inits l `zip` tails l might also be edifying.


-- 
J�n Fairbairn                                 [EMAIL PROTECTED]


_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to