temp偏移量问题

temp偏移量问题

老师你好,我用php实现,逻辑照你的来写,测试用例:arr{7, 1, 4, 2, 8, 3, 6, 5}但是运行结果不正确。

ps:我用left表示老师的L

https://img1.sycdn.imooc.com//climg/61b9414a097ed51411840911.jpg



但是我让i 和 j 不减 left 结果反而正确了,我还不清楚问题出在哪里,请老师指点


https://img1.sycdn.imooc.com//climg/61b9420f093fba6512730895.jpg



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

登陆购买课程后可参与讨论,去登陆

1回答
liuyubobobo 2021-12-15 09:48:00

你的 temp 和 arr 之间没有偏移。因为 temp = arr 以后,temp 和 arr 的大小一样。对比课程代码中,temp 的大小是 r - l + 1,arr 的大小是 n。


你的写法相当于课程后续的一个优化中的写法,参考这里 69-91:https://git.imooc.com/class-105/Play-Algorithms-and-Data-Structures/src/master/10-More-about-MergeSort/03-MergeSort-Advanced-Optimization/src/MergeSort.java


(但是,你的 temp 是一个全局变量?)


继续加油!:)

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
算法与数据结构
  • 参与学习       2627    人
  • 解答问题       1105    个

慕课网算法名师Liuyubobobo,5年集大成之作 从0到工作5年,算法与数据结构系统解决方案

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师