码迷,mamicode.com
首页 >  
搜索关键字:最小    ( 39739个结果
利用堆实现堆排序&优先队列
假设要实现非递减排序,则需要用要大顶堆。此处设计到三个大顶堆的操作:(1)自顶向下调整操作:MaxHeapify(对应堆的SiftDown操作)、(2)利用数组建立大顶堆:BuildMaxHeap、(3)不断交换堆顶元素(堆的最大元素)和堆的末尾元素,实现非递减排序。 优先队列分为最大优先队列和最小优先队列,分别借助于大顶堆和小顶堆。 优先队列有以下基本操作:(1)提取队列中的最大(小)元素;(2)提取队列中的最大(小)元素并从队列中删除;(3)将队列中元素为x的关键字减少(增大)到k,这里假设k的值不大(...
分类:其他好文   时间:2014-06-22 20:58:26    阅读次数:319
删除Map中Value重复的记录,并且只保留Key最小的那条记录
介绍 晚上无聊的时候,我做了一个测试题,测试题的大体意思是:删除Map中Value重复的记录,并且只保留Key最小的那条记录。 例如: I have a map with duplicate values: ("A", "1"); ("B", "2"); ("C", "2"); ("D", "3"); ("E", "3"); I would like to the map to have: ("A", "1"); ("B", "2"); ...
分类:其他好文   时间:2014-06-22 20:30:10    阅读次数:175
怎样写一个好的方法
方法,一个程序的基本组成,程序编写的最小设计单位,但写好一个方法却不容易。 先说什么样的方法才是一个好方法。首先,可读性要好,因为程序在编译运行之前一直都是给人看的;其次,对于耗费资源或者运算量大的方法,效率也很重要。 这里只讨论可读性。对于效率那是程序优化的技术问题,需要一定的功底,但可读性是我们所有人花些心力都可以做的很好的,而且这个做好了,也就很好了。 首先看一个方法有哪些组成部分,以...
分类:其他好文   时间:2014-06-22 20:07:46    阅读次数:238
算法8-1:最小生成树简介
最小生成树是图论中的一个概念。首先介绍一下什么是生成树。生成树就是将一个图中所有的顶点全部连接在一起,并且保证图中没有出现回路。 下图不是生成树,因为没有连接所有的顶点。 下图不是生成树,因为图中有回路。 像下图这样的才是生成树。 生成树的概念介绍完了。那么最...
分类:其他好文   时间:2014-06-22 18:33:47    阅读次数:202
HDOJ 1054 Strategic Game
二分图匹配: 最大匹配数=最大独立集=最小点覆盖 最小路径覆盖=点数-最大匹配数 Strategic Game Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 4739    Accepted Submission(...
分类:其他好文   时间:2014-06-22 17:55:06    阅读次数:163
无向图最小生成树Prim算法
无向图最小生成树的Prim算法,在实现上方法各异。本文演示了用Python是实现的方法,特别是应用了Python有的一个heapq排序方法,让代码更简洁。...
分类:其他好文   时间:2014-06-22 16:11:00    阅读次数:176
Joda Time 使用
最近一直做的几个功能都跟日期处理有关,比如判断今天是否登录,今天的最小时间,今天结束的最大时间等。     代码中都是用的JDK自带的 Calendar,使用起来相当费劲了,于是乎,忍不了,找到了一个名叫:JodaTime 的库,     目前Joda Time 已经纳入 JDK 8 的官方API了,但是JDK 8还是很遥远,下面我给大家演示几个实例:   1、  获取今天的开始时间:比如...
分类:其他好文   时间:2014-06-22 14:02:47    阅读次数:176
十大基础实用算法之寻找最小(最大)的k个数-线性查找算法
本文章用七种思路来查找无序数组中的前k个最小(最大)元素,复杂度随着问题的分析变得越来越低,思路也随着分析变得越来越的。贯穿讲解了快速排序和堆排序的应用,对这两种的排序在阅读本文后会有更深刻的理解。...
分类:其他好文   时间:2014-06-22 00:06:29    阅读次数:347
算法8-2:最小生成树贪婪算法
为了简化问题,我们需要作出一些假设。假设图中每条边的权重都是不一样的,假设整个图是连通的。这样假设的目的就是让最小生成树的计算结果是唯一的。 图的切割 介绍算法之前,需要先了解图的切割。图的切割就是将顶点分割成两部分,切到的边称之为交叉边。下图红色的先就是交叉边。 在最小生成树中,无论如何切割,最小生成树总是从交叉边中选择最小的...
分类:其他好文   时间:2014-06-21 23:51:30    阅读次数:316
HDU 2435 There is a war (网络流-最小割)
HDU 2435 There is a war (网络流-最小割) 题目大意: n个岛通过有向边连在一起,countryOne坐落在1号岛上,countryAny坐落在n号岛上,现在1 要进攻 n ,n为了抵御1的攻击,要毁坏边,没条边毁坏要花费,现在1可以在 2-n 任意两个岛上建立一个摧毁不了的边,使得 countryAny 为了抵御进攻最小的花费最大为多少? 解题思路: 首先,最小割可以理解成网络流的流量,第一步 ,countryAny肯定要用最小的花费使得图不连通,这个花费就是最小割。 但是,co...
分类:其他好文   时间:2014-06-21 22:07:02    阅读次数:385
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!