快速排序的不同语言不同方法实现的…
2017-08-11 23:29
260 查看
C语言版本
void
sort(
int
*a,
int
left,
int
right)
{
if
(left >= right)
{
return
;
}
int
i = left;
int
j = right;
int
key = a[left];
while
(i < j)
{
while
(i < j && key <= a[j])
{
j--;
}
a[i] = a[j];
while
(i < j && key >= a[i])
{
i++;
}
a[j] = a[i];
}
a[i] = key;
sort(a, left, i - 1);
sort(a, i + 1, right);
}
JavaScript
function
quickSort(array){
function
sort(prev, numsize){
var
nonius = prev;
var
j = numsize -1;
var
flag = array[prev];
if
((numsize - prev) > 1) {
while
(nonius < j){
for
(; nonius < j; j--){
if
(array[j] < flag) {
array[nonius++] = array[j];
//a[i] = a[j]; i += 1;
break
;
};
}
for
( ; nonius < j; nonius++){
if
(array[nonius] > flag){
array[j--] = array[nonius];
break
;
}
}
}
array[nonius] = flag;
sort(0, nonius);
sort(nonius + 1, numsize);
}
}
sort(0, array.length);
return
array;
}
相关文章推荐
- 快速排序的不同语言不同方法实现的…
- 快速排序的不同语言不同方法实现的…
- 快速排序基于不同枢纽的实现方法
- 快速排序的三种不同的实现方式。
- 快速排序模板方法,只实现了int比较的仿函数
- 快速排序方法Java实现与分析
- 【快速排序】QuickSort(三种实现方法)c++描述
- 深入浅出Dll(介绍函数导出、类导出、钓子dll、不同语言混合编程方法、插件等的实现方法)
- 汇编语言实现快速冒泡排序
- 算法导论 - 快速排序的 C 语言实现
- 深入浅出Dll( 函数导出、类导出、钓子dll、不同语言混合编程方法、插件等的实现方法)
- 快速实现Magento多语言的设置和产品数据的多语言方法
- 重写compareTo方法,按不同方式实现排序,小程序
- 快速排序三种实现方法
- 排序都有哪几种方法?请列举。用JAVA实现一个快速排序。
- 深入浅出Dll(介绍函数导出、类导出、钓子dll、不同语言混合编程方法、插件等的实现方法) 选择自 iceezone 的 Blog
- 主流数据库之间对SQL:2003标准的不同实现方法比较(第二部分 结果集排序)
- 快速排序-几种不同的划分方法
- 快速排序Java语言实现
- 深入浅出Dll( 函数导出、类导出、钓子dll、不同语言混合编程方法、插件等的实现方法)