- 博客(3)
- 资源 (6)
- 收藏
- 关注
原创 快速排序算法
快速排序算法通常是用于排序的最佳选择,尽管它在最坏情况下的运行时间是O(n²),但平均性能是O(nlgn),并且逻辑简单。 快速排序算法一共有两个子过程Partition(int[] array,int p,int r),它把数组的p至r部分就地重排,并返回一个q,并且使数组满足以下条件:q左边的数值全部小于或等于q的数值,q右边的数值都大于或等于q的数值。
2017-03-06 18:34:47 410
原创 堆排序算法
堆排序是一个非常出色的算法,在时间复杂度是`O(nlog(n))`,在空间上是就地排序。堆,又叫二叉堆,被是视为完全二叉树。堆可以分为两种,最大堆和最小堆,最大堆的意思是,每一个节点(除根节点以外)的值一定小于或等于它的父节点的值。最小堆的意思是,每个节点(除根节点外)的值一定小于或等于他的父节点的值。最大堆中的最大值一定位于它的根节点,而最小堆的最小值也一定位于它的根节点。
2017-03-05 22:11:59 345
原创 合并排序算法
合并排序利用分治法来完成排序。它的大致过程还可以用扑克牌来作比喻。假设有两堆扑克牌,各自是从小到大排好序的,如果我想对这两堆扑克牌排序,只需要每次取两堆牌上面较小的那张,一直取到其中一堆为0, 然后再依次把剩下的那堆牌取完,我们就把这两堆牌排好序了。但是,两堆排好序的扑克牌是怎么来的呢
2017-03-02 22:04:49 703
Sun Java System Application Server Performance Tuning Guide.pdf
2021-10-08
NorthWind数据库
2012-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人