gpt4 book ai didi

java - 使用第一个元素作为枢轴的快速排序

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:59:31 24 4
gpt4 key购买 nike

<分区>

我通过选择第一个元素作为基准来实现快速排序。它适用于一般测试用例,但考虑数组反向排序的情况,例如 5 4 3 2 1。我知道它在哪里抛出运行时错误。但我无法正确修复它。第一个元素作为枢轴的实现是否正确?请提出修改建议。

 public static void quicksort(int low,int high)
{

if(low<high)
{
int temp=0;
int pivot=a[low];
int large_index=low+1;
int small_index=high;

while(large_index<=small_index)
{
while(a[small_index]>pivot)
small_index--;

while(a[large_index]<pivot)
large_index++;

if(large_index<=small_index)
{
temp = a[large_index];
a[large_index]= a[small_index];
a[small_index]= temp;
large_index++;
small_index--;
}
}

temp = a[small_index];
a[small_index]= a[low];
a[low]= temp;


quicksort(low,small_index-1);
quicksort(small_index+1,high);
}

}

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com