`
这些年
  • 浏览: 389261 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
一. 定义  任何关键字data[0...n]都可以组成一个完全二叉树。 堆就是一种特殊的二叉树:树中任一非叶结点的关键字均大于等于(或小于等于)其左右孩子(若存在)结点的关键字。 大于等于称为大根堆;小于等于称为小根堆。     二. 排序方法(以大根堆为例) 先将初始文件data[1..n]建成一个大根堆,此堆为初始的无序区。 将关键字最大的记录data[0](即堆顶)和无序区的最后一个记录data[n]交换,由此得到新的无序区data[0..n-1]和有序区data[n],且满足data[1..n-1]≤data[n]。 由于交换后新的根data[0]可能违反堆 ...
自从MongoDB被越来越多的大型关键项目采用后,数据分析也成为了越来越重要的话题。人们似乎已经厌倦了使用不同的软件来进行分析(这都利用到了Hadoop),因为这些方法往往需要大规模的数据传输,而这些成本相当昂贵。 MongoDB提供了2种方式来对数据进行分析:Map Reduce(以下简称MR)和聚合框架(Aggregation Framework)。MR非常灵活且易于使用,它可以很好地与分片(sharding)结合使用,并允许大规模输出。尽管在MongoDB v2.4版本中,由于JavaScript引擎从Spider切换到了V8,使得MR的性能有了大幅改进,但是与Agg Framework ...
Plushlet相关介绍不再扯淡   我在将Plushlet集成到我的Web项目中时出现了 [pushlet] problem retrieving XML data: 这个状态栏提示错误 经过对比和调试,发现一些问题总结下来提供参考   第一: 我对比了一下Plushlet提供的示例工程和在MyEclipse上创建的工程发现他们的 web.xml 头信息配置有所不同! Xml代码   <!DOCTYPE web-app  
好多示例只是示例,没有说这个问题,既然发现了,我就就地解决一下!   我的方法很简单,对要传送的内容进行编码! Java后台和JS前台都有包装的编解码方法,可以直接使用看效果! 后台编码(解码自己搞): Java代码   package com;  
Pushlet(一种comet 架构的实现)是基于Servlet 机制,数据从server端的Java 对象直接推送(push)到客户端浏览器的(动态)HTML 页面,而无需任何Java applet 或者插件的帮助。 在MyEclipse中创建工程。附件包含了从官方下载的Pushlet包已经本次的源码包,直接导入到开发工具即可。 在创建的工程中增加pushlet.jar,log4j.jar。拷贝pushlet.properties,sources.properties到WEB-INF下。拷贝ajax-pushlet-client.js到WebRoot下。 配置web.xml ...
一.概述 LinkedList继承Deque,所以LinkedList的插入删除操作遵循先进性出FIFO。 LinkedList继承Deque,所以Linkedist实现了Deque的操作,比喻offer peek pollfirst/last等操作。其实这些操作也就是建立在getFirst getLast addFirst addLast removeFirst removeLast这几个操作上的。   二 .成员变量 Java代码   //头节点  
一. 排序方法 快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。 分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。原排序数组data[0...n]。 分解:在data[low..high]中任选一个记录作为基准(pivot),以此基准将当前无序区划分为左、右两个较小的子区间data[low..pivotpos-1]和data[pivotpos+1..high],并使左边子区间中所有记录的关键 ...
一.排序方法 先取一个小于n的整数increment作为第一个增量,把文件的全部记录分成increment个组。所有距离为increment的倍数的记录放在同一个组中。先在各组内进行直接插人排序。 取第二个增量increment(小于1中的increment)重复上述的分组和排序,直至所取的增量increment=1,即所有记录放在同一组中进行直接插入排序为止。  希尔排序实质上是一种分组插入方法。   二.动画演示      http://student.zjzk.cn/course_ware/data_structure/web/flashhtml/shell.htm   ...
一.排序方法      基本思想:被排列的数组data[0...n]。初始时,data[0]自成1个有序区,无序区为data[1..n];从i=1起直至i=n为止,依次将data[i]插入当前的有序区data[0..i-1]中,生成含n个记录的有序区。 将待插入元素data[i]从右向左依次与有序区中记录data[j](j=i-1,i-2,…,0)进行比较。 若data[j]大于data[i],则将data[j]后移一个位置。 若data[j]小于或等于data[i],则查找过程结束,j+1即为data[i]的插入位置。   二.动画演示      http://studen ...
Java中乱码问题很常见,原因也多种多样,这里做一个总结,不求全面,力求准确,如果错误欢迎指正。   1.文件页面编码导致的乱码。 每一个文件(java,js,jsp,html等)都有其本身的编码格式,文件中的代码在一种编码中显示正常,在另外一种编码下就会显示出乱码。在Eclipse中,每一个工程都会有编码格式(Text file encoding), 一般默认为GBK。而一个比较好的编程习惯是新建一个项目,优先把项目的编码设为UTF-8。这样做的原因很简单,UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强。几种常见的字符集,GBK,GB2312,UTF-8之间的关系如下 ...
一.成员变量 Java代码   // 在AbstractList里面定义的   protected transient int modCount = 0;  
一.概述      Set是通过Map来支持的,Set接口里的所有方法,都委托给内部的Map去实现。   二.HashSet源码 Java代码   public class HashSet<E>       
一.TreeMap成员变量 Java代码   //Comparator比较器接口,接口里面只有两个方法int compare(T o1, T o2);boolean equals(Object obj);   private final Comparator<? supe
一.排序二叉树 排序二叉树是一种特殊结构的二叉树,可以非常方便地对树中所有节点进行排序和检索。 排序二叉树要么是一棵空二叉树,要么是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值。 若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值。   二.排序二叉树添加节点      以根节点当前节点开始搜索,拿被添加的节点的值和当前节点的值比较。 如果被添加的节点的值更小,则以当前节点的左子节点作为新的当前节点。 如果被添加的节点的值更大,则以当前节点的右子节点作为新的当前节点。 重复1 ...
一.概念      抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确知道具体类。   二.实例分析        CPU Java代码  
Global site tag (gtag.js) - Google Analytics