zoukankan
html css js c++ java
快速排序(QuickSort)用C# 实现的小例子
class
QuickSort
{
public
void
Sort(
int
[] data,
int
start,
int
end)
{
if
(start
>=
end)
return
;
if
(start
+
1
==
end)
{
if
(data[start]
>
data[end])
Swap(data, start, end);
return
;
}
int
indexL
=
start
+
1
, indexR
=
end;
while
(indexL
<
indexR)
{
//
Get from left
while
(indexL
<=
end
&&
data[start]
>=
data[indexL])
indexL
++
;
//
Get from right
while
(indexR
>
start
&&
data[start]
<
data[indexR])
indexR
--
;
if
(indexL
<
indexR)
{
Swap(data, indexR, indexL);
}
}
if
(indexL
-
1
!=
start)
Swap(data, start, indexL
-
1
);
Sort(data, start, indexL
-
2
);
Sort(data, indexL, end);
}
private
void
Swap(
int
[] data,
int
x,
int
y)
{
data[x]
=
data[x]
+
data[y];
data[y]
=
data[x]
-
data[y];
data[x]
=
data[x]
-
data[y];
}
}
文章首发
查看全文
相关阅读:
Harvest of Apples (HDU多校第四场 B) (HDU 6333 ) 莫队 + 组合数 + 逆元
BZOJ4383/LuoGuP3588 Pustynia/PUS 线段树建图优化
初识splay
nowcoder牛客wannafly挑战赛20
初识树链剖分
二维数据结构---线段树
初识莫队——小Z的袜子
kuangbin带我飞QAQ 并查集
十个二分九个错?教你如何优雅地写二分查找
Codeforces Round #436 (Div. 2) E. Fire(dp 记录路径)
原文地址:https://www.cnblogs.com/skywind/p/1131612.html
最新文章
TP5与TP3.X对比
代码写响应式时钟效果
ThinkPhp框架:分页查询
ThinkPHP框架:补充知识
TP框架---表单验证
SVN的使用
TP框架---View视图层---模板继承
ThinkPhp框架:验证码功能
ThinkPhp框架:文件上传
Vue如何在webpack设置代理解决跨域问题
热门文章
如何在小程序自定义组件和动态传入数据小demo
如何在小程序实现图片lazy-load懒加载效果
Vue编写轮播组件引入better-scroll插件无法正常循环轮播
转载:better-scroll的相关api
Vue如何实现swiper左右滑动内容区控制导航tab同时切换高亮
随机生成32位字符串算法
Vue如何使用vue-area-linkage实现地址三级联动效果
Vue如何点亮多个tab选项简易方法
Vue如何mock数据模拟Ajax请求
牛客网暑期ACM多校训练营(第一场)菜鸟补题QAQ
Copyright © 2011-2022 走看看