[Haskell-beginners] Updating lists inside another list
Lee Duhem
lee.duhem at gmail.com
Mon Jun 22 21:41:30 EDT 2009
On Tue, Jun 23, 2009 at 8:05 AM, Aaron MacDonald<aaronjm at eastlink.ca> wrote:
> I have a list of pairs. Each pair has a value and a list. So, the structure
> looks like this:
>
> [ (a, [b, c]), (b, [a, c]) ]
>
> What I want to do is be able to add an element to the inner list of the pair
> with the head value of my choosing. So, for the above list:
>
>> addToInnerList [ (a, [b, c]), (b, [a, c]) ] a d
> [ (a, [b, c, d]), (b, [a, c]) ]
> _______________________________________________
A simple recursive definition will do this:
addToInnerList [] _ _ = []
addToInnerList (x@(h,l):xs) a b
| h == a = (h,l++[b]):xs
| otherwise = x : addToInnerList xs a b
BTW, is it your homework?
lee
More information about the Beginners
mailing list