// Gremlin: See Quicksort Integers, Quicksort Strings and Quicksort Map Stable list sortStrings = [ "aza", "aba", "aaa", "ana", "ban", "aaaa", "abarbecue" ]; integer stringComparer(list a, list b) { list alph = [ "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z" ]; integer i; for(i=0; i llListFindList(alph, (list)llGetSubString(llList2String(b, 0), i, i))) { return FALSE; } } return TRUE; } list quicksort(list a) { if(llGetListLength(a) <= 1) return a; list pivot = llList2List(a, llGetListLength(a)/2, llGetListLength(a)/2); a = llDeleteSubList(a, llGetListLength(a)/2, llGetListLength(a)/2); list less = []; list more = []; integer i; for(i=0; i