请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

问老师归并排序sort部分

那个sort部分 没有具体实现过程直接用sort( arr,1, mid)就可以排序吗? 还有那个为什么要写一个public的sort和一个private的sort?

正在回答 回答被采纳积分+3

1回答

liuyubobobo 2018-02-03 04:37:49

public sort是留给用户的接口,用户只需要调用这个public的sort,将待排序数组传进去就好了。


private sort是我们的public sort使用的一个排序子过程,是我们真正的排序逻辑。你可以看到其中的参数变多了,它本身是一个递归调用,实现了归并排序算法。


如果你愿意,删除掉现在的public sort,把现在的private sort改成public,作为用户调用的接口,也是没问题的。不过这样用户还要多传两个参数:)


具体我的测试调用过程,可以参见代码中的main函数:)

0 回复 有任何疑惑可以回复我~
  • 提问者 qq_TheNights_0 #1
    那就是说private sort中的sort(arr,l,mid)这句话就可以执行排序?
    回复 有任何疑惑可以回复我~ 2018-02-03 14:04:25
  • liuyubobobo 回复 提问者 qq_TheNights_0 #2
    这句话对arr的[l, mid)这部分进行了排序。
    回复 有任何疑惑可以回复我~ 2018-02-03 14:34:20
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信