I had an experience changing code from using priority queue using finger tree to using sorted lists (regular Haskell's lazy lists, sorted, not even merged!) and obtaining an order of magnitude speedup and reduction of memory consumption.
So I would like to advise staying away from finger trees and other interesting data structures when lists suffice.
In case of queues they are very sufficient.
What article lacks, is the performance comparisons.
So I would like to advise staying away from finger trees and other interesting data structures when lists suffice.
In case of queues they are very sufficient.
What article lacks, is the performance comparisons.