在函数中
parti,要基于枢轴对数组进行分区,在尝试确定其正确位置时要 包括枢轴本身 。
在某些情况下,这导致无限递归,因为 枢轴正 与自己进行比较 ,因此仅在相邻位置之间保持交换 。
两种解决方案:解决方案1:解决方案2:function [ar,i]= parti(ar,p,r) x=ar(r); i=p-1; for j=p:r-1 % Notice the r-1 if ar(j) <= x i=i+1; if i~=j % ...
function [ar,i]= parti(ar,p,r) x=ar(r); i=p-1; for j=p:r if ar(j) < x % Notice the change in checking i=i+1; if i~=j % ...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)