在this question工作了很长一段时间后,我意识到我并不完全理解uksort如何在内部工作,也找不到任何相关的文档。
当您返回当前比较的整数值时,处理的值的顺序是什么,并且值的进一步处理会停止吗?
答案 0 :(得分:1)
处理值的顺序取决于解释器的排序算法。结果是你不应该担心它;无论他们处理的是什么顺序,最终结果都是相同的(如果你的卡片类别,它将以相同的顺序结束,无论你是否事先将其洗牌,只要2 < 3
和{{ 1}}等等。)
除了最天真的排序算法之外,在到达结果数组中的最终位置之前,将多次访问(“处理”)一个值。当您在回调中J < Q
提供return
时,不一定是最后一次为这两个值调用回调。