数据结构(四.完)——O(nlogn)排序
来源:互联网 发布:c语言全排列函数 编辑:程序博客网 时间:2024/04/27 20:47
这种排序是改进后的排序,有希尔、堆、归并和快速排序,其中快速排序比较“好”:
sub swap { my ($d1, $d2, @a) = @_; my $tmp = $a[$d1]; $a[$d1] = $a[$d2]; $a[$d2] = $tmp; } sub quickSort{my (@a, $low, $high) = @_;while($low < $high){my $pivot = pivotSelection(@a, 0, $length);qucikSort(@a, 0, $pivot - 1);$low = $pivot + 1;}}sub pivotSelection{my (@a, $low, $high) = @_;my $m = int($low + ($high - $low) / 2);swap(@a, $low, $high) if($a[$low] > $a[$high]);swap(@a, $high, $m) if($a[$m] > $a[$high]);swap(@a, $m, $low) if($a[$m] > $a[$low]);my $pivotkey = $a[$low];while($low < $high){if($low < $high and $a[$high] >= $pivotkey){$high --;}swap($low, $high, @a);if($low < $high and $a[$high] <= $pivotkey){$low ++;}swap($low, $high, @a);}return $low;}
- 数据结构(四.完)——O(nlogn)排序
- 数据结构之排序算法之O(nlogn)
- 希尔排序(O(nlogn)-O(n2))
- 快速排序(分治法O(nlogn))
- 排序 O(nlogn)
- 快速排序(O(nlogn))
- 排序算法之快速排序(O (NlogN))
- leetcode链表O(nlogn)排序
- O(nlogn)排序算法--QuickRank
- 数据结构实验(四)—— 排序
- 项目3的程序2——复杂度为O(nlogn)的快速排序程序
- 单链表排序O(nlogn),O(1)
- 二、排序(时间复杂度 O(nlogn))
- 排序的最低时间复杂度为什么是O(nlogn)
- 归并排序平均时间复杂度O(NlogN)
- 改进版快速排序(平均复杂度O(NlogN))
- 数据结构(三)——O(n2)排序
- 最长递增子序列的求解(O(n*n),O(nlogn))——动态规划
- mysql常用操作
- Android 多级菜单实现
- SAP 条码打印 --> SAP Smartforms 条码打印(转)
- android左右滑屏
- Google Protocol Buffers自带c++,java,python例子程序编译运行
- 数据结构(四.完)——O(nlogn)排序
- java中的多线程
- 内核抢占
- 解决MAC OS X 10.6.*无法安装软件的问题
- javascript数组操作大全,数组方法总汇
- android mediarecorder 录制音频并通过socket,存储到本地
- VS2008ReportViewer控件,在IE8下浏览出现文本框中插入的图表无法显示
- 底部菜单栏之Fragment的详细介绍和使用方法
- 430 F149 DS18B20数码管温度计设计