The closest I had ever come to doing anything remotely similar was when I decided to write a bi-directional sorting algo. Scans for highest and lowest of strings from top to bottom, then back to top. Highest string placed in last position, lowest placed in first position. Then starting from bottom-1 scan upward to start+1, then downward to bottom -2 then back up to start+2. By the time the pointer is in the middle, should be fully sorted. Used a tokenized array of strings to do it. It worked, but was painfully slow compared to 'modern' sorting techniques. But still faster than just a top to bottom byte scanner method. If all of that makes sense somehow. I no longer have that diagram though.
I needed a visual of what I wanted the code to do.
If I can find that code I might post it if anyone wants a good laugh.
Edited later to add: I've searched my hard drives and couldn't find that code. Ran across some other experimental sorting code though. But in the end, could not compete with some of the much faster algorithms out there already. They were fun coding projects though.