不知道你有没有测试你的代码,我感觉你的代码是运行不出结果的.
1.count变量被初始化为0,而接下来的while循环却必须count!=0时才会执行,而count++语句在while循环里,也就是count的值永远为0,且不会被改变,while循环不会被执行
2.最后一个if(i=499)是什么意思?你发的代码中只有for循环声明了一个i,但是,这个i的作用于只在for循环内吧,for之外的if是怎么访问并判断的?
代码没加注释,所以理解你的思路有点困难.我理解的你是想,把数组a左边和对应的下标的元素比较并存入数组中.如果你是这个思路的话,那么你对归并排序的理解有误.原理太长不码字了,举个例子吧,左边数组1,2,3右边数组4,5,6按你的代码思路,最后数组b排序结果是1,4,2,5,3,6
正确归并思路应该是,1<4,所以数组b放1;然后2<4;数组b在放2;3<4,数组b在放3;最后左边没数字了,又因为两个子数组都是有序的,直接把4,5,6放进数组b |