Weirdly, someone pinged me about a week ago asking about the A* algorithm. Wut?, I thought to myself, and then remembered writing an article about it way back when. So, here goes… […]
READ MORENext in my occasional series of “reprints” from The Delphi Magazine is a series of articles about one of my favorite data structures, the hash table. […]
READ MOREYou might have thought that the last couple of posts would have done it for the priority queue – after all, we have the optimal heap implementation for it – but no. There are a couple more fun bits. Let’s investigate a little bit more. […]
READ MORELast time, we introduced the concept of a priority queue data structure, and illustrated it with a couple of simple implementations using an array: firstly by adding new items at the end, and then getting the highest priority item by searching through the array; secondly by maintaining the array in sorted order by priority, forcing new items to be inserted in the correct position in the array, and getting an item is merely removing it from the end of the array. I called these fast insertion/slow deletion and slow insertion/fast deletion implementations. […]
READ MOREFirst up in my “reprints from The Delphi Magazine, cast in JavaScript” posts must be the priority queue. It is after all, an important data structure, can be implemented quickly (although perhaps in not a very efficient manner), and introduces an excellent algorithm, the heap. […]
READ MOREFor some time now, I’ve been pondering whether or not to post my old articles from The Delphi Magazine here on my blog. I supplied Chris Frizelle, the editor, with algorithm articles for a good nine years from November 1997 (with an eight month hiatus while I worked at Microsoft: at the time they frowned upon that kind of thing, especially writing about Delphi and not C# – eek!), under the soubriquet Algorithms Alfresco. It would not be hard to discern that that the early ones formed the basis for my algorithms book. […]
READ MORE