Difference between revisions of "Talk:Anagrams"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
This is something I threw together in my spare time at work to play with Data.ByteString. I'm sure there are things that could be done better; please improve as you wish and leave notes and reasoning on this page. |
This is something I threw together in my spare time at work to play with Data.ByteString. I'm sure there are things that could be done better; please improve as you wish and leave notes and reasoning on this page. |
||
Thanks! |
Thanks! |
||
+ | |||
+ | |||
+ | |||
+ | Ideas: |
||
+ | * B.group is apparently quite slow. Perhaps it would be faster to do something like: |
||
+ | <haskell> |
||
+ | [CharCount n (B.count n s) | n <- ['A'..'Z'], s <- strings] |
||
+ | -- or |
||
+ | [B.foldl' (\cl c -> updateAssocListSomehow c) s [] | s <- strings] |
||
+ | </haskell> |
||
+ | |||
+ | |||
+ | * The <code>[CharCount]</code> representation may not be the most efficient. A 27 integer UArray could be faster. Then again, I haven't profiled the code and wasn't aiming for raw speed, so.. *shrug* |
Revision as of 17:32, 9 June 2006
This is something I threw together in my spare time at work to play with Data.ByteString. I'm sure there are things that could be done better; please improve as you wish and leave notes and reasoning on this page. Thanks!
Ideas:
- B.group is apparently quite slow. Perhaps it would be faster to do something like:
[CharCount n (B.count n s) | n <- ['A'..'Z'], s <- strings]
-- or
[B.foldl' (\cl c -> updateAssocListSomehow c) s [] | s <- strings]
- The
[CharCount]
representation may not be the most efficient. A 27 integer UArray could be faster. Then again, I haven't profiled the code and wasn't aiming for raw speed, so.. *shrug*