public class QuickSort {
public static void main(String
[] args
) {
int data
[]={45,28,80,90,50,16,100,10};
int n
=data
.length
-1;
qSort(data
,0,n
);
for (int i
= 0; i
< data
.length
; i
++) {
System
.out
.println(data
[i
]);
}
}
public static void qSort(int data
[], int left
, int right
) {
int base
= data
[left
];
int ll
= left
;
int rr
= right
;
while (ll
< rr
) {
while (ll
< rr
&& data
[rr
] >= base
) {
rr
--;
}
if (ll
< rr
) {
int temp
= data
[rr
];
data
[rr
] = data
[ll
];
data
[ll
] = temp
;
ll
++;
}
while (ll
< rr
&& data
[ll
] <= base
) {
ll
++;
}
if (ll
< rr
) {
int temp
= data
[rr
];
data
[rr
] = data
[ll
];
data
[ll
] = temp
;
rr
--;
}
}
if (left
< ll
)
qSort(data
, left
, ll
- 1);
if (ll
< right
)
qSort(data
, ll
+ 1, right
);
}
}
转载请注明原文地址:https://blackberry.8miu.com/read-41870.html