我的Quicksort运行正常,代码在这里:

https://gist.github.com/RoloRobot/b2e15af9ab0d8c1bdbdd

我想做的是使它不仅对数字进行排序,而且对字符串和对象也进行排序。我将如何去做?任何帮助,将不胜感激,谢谢!

最佳答案

您可以创建要提供给quickSort的其他compare函数

// numbers or strings
quickSort(array, left, right, (a, b) => a < b)

// custom objects comparison (by foo key)
quickSort(array, left, right, (a, b) => a.foo < b.foo)


而且,如果您不想手动设置它们,则可以自动检测类型:

if (typeof item === 'string') { compare = compareStrings; }

关于javascript - 对于我的Quicksort算法,我该如何使它对字符串和对象也进行排序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33906989/

10-11 15:48