Java
文章平均质量分 82
awen_c
这个作者很懒,什么都没留下…
展开
-
快速排序之Java实现
快速排序的思想是:原创 2014-06-24 13:51:09 · 404 阅读 · 0 评论 -
堆排序之Java实现
堆排序思想: 堆排序,顾名思义,就是基于堆。堆分为最大堆和最小堆,其实就是完全二叉树。最大堆要求节点的元素都要大于其孩子,最小堆要求节点元素都小于其左右孩子,两者对左右孩子的大小关系不做任何要求,其实很好理解。有了上面的定义,我们可以得知,处于最大堆的根节点的元素一定是这个堆中的最大值。其实我们的堆排序算法就是抓住了堆的这一特点,每次都取堆顶的元素,将其放在序列最后面,然后将剩余的元素重新调整为原创 2014-06-24 14:03:40 · 782 阅读 · 0 评论 -
基于堆排序实现的找出N个数据的前M大数据之Java实现
算法思想: 当有N个数据,而N又是非常,需要找出N条数据的排名最前的M条数据时,可以采用的一种策略。 先选前M个元素组成一个小根堆,然后遍历剩下的数据,如果第i个元素key大于小根堆的根结点,就删除这个根结点,并将元素key插入这个小根椎,然后再次调整这个堆使其成为小根堆,然后继续遍历剩下的数据; 最后,小根堆中的元素就是最大的M个元素。 代码实现如下: HeapSort Clas原创 2014-06-24 14:10:50 · 1364 阅读 · 0 评论 -
利用mybatis实现物理分页
Mybatis的分页功能很弱,它是基于内存的分页(查出所有记录再按偏移量和limit取结果),在大数据量的情况下这样的分页基本上是没有用的。本文基于插件,通过拦截StatementHandler重写sql语句,实现数据库的物理分页。本文适配的mybatis版本是3.2.7。具体实现如下: PaginationInterceptor类: package org.reacher.intercept原创 2015-04-03 14:31:04 · 2035 阅读 · 0 评论