java快速排序迭代_Java迭代快速排序程序

下面是用于迭代快速排序的Java程序

示例public class Demo{

void swap_vals(int arr[], int i, int j){

int temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

int partition(int arr[], int l, int h){

int x = arr[h];

int i = (l - 1);

for (int j = l; j <= h - 1; j++){

if (arr[j] = 0){

h = my_list[top--];

l = my_list[top--];

int p = partition(arr, l, h);

if (p - 1 > l){

my_list[++top] = l;

my_list[++top] = p - 1;

}

if (p + 1 

my_list[++top] = p + 1;

my_list[++top] = h;

}

}

}

public static void main(String args[]){

Demo my_ob = new Demo();

int my_arr[] = { 34, 76, 41, 32, 11, 0 , 91, 102, -11};

my_ob.quick_sort(my_arr, 0, my_arr.length - 1);

int i;

System.out.println("迭代快速排序之后,数组为 ");

for (i = 0; i 

System.out.print(my_arr[i] + " ");

}

}

}

输出结果迭代快速排序之后,数组为

-11 0 11 32 34 41 76 91 102

一个名为Demo的类包含3个函数,“swap”用于使用临时变量交换值,一个“partition”函数根据主元素值将数组分为两半,以及“quick_sort”函数,该函数使用主元素值并基于该值对数组中的值进行排序。

在main函数中,将创建Demo类的实例以及一个数组。 在该数组上调用“ quick_sort”函数,并在控制台上显示输出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值