算法与面试
文章平均质量分 84
风的王子
【关注领域】 架构 算法 前端 Android Flutter Unity
【喜欢爱好】武术和运动 看书 科幻和未解之谜
【我的GITHUB】https://github.com/zcwfeng
展开
-
平衡二叉树以及平衡二叉树旋转
形态匀称的二叉树称为平衡二叉树 (Balanced binary tree) ,其严格定义是: 一棵空树是平衡二叉树;若 T 是一棵非空二叉树,其左、右子树为 TL 和 TR ,令 hl 和 hr 分别为左、右子树的深度。当且仅当 ①TL 、 TR 都是平衡二叉树; ② | hl - hr |≤ 1; 时,则 T 是平衡二叉树。 【例】如图 8.4 所示。转载 2013-08-12 20:05:59 · 1396 阅读 · 0 评论 -
java读取大文件1G+
正常读取大文件,可能会想到用缓存 如: package base; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException;原创 2013-10-30 13:12:05 · 3291 阅读 · 0 评论 -
Linux 命令总结
文件管理 cat chattr chgrp chmod chown cksum cmp diff diffstat file find git gitview indent cut ln less locate lsattr mattrib mc mdel mdir mktemp more mmove mread mren mtools原创 2013-11-02 12:21:58 · 761 阅读 · 0 评论 -
HBase的理论性总结
1.HBase的体系结构 主从服务器架构,有HReginon群和HBase Master服务器构成。HBase Master负责管理所有的HRegion服务器,所有的HRegion服务器通过Zookeeper来进行协调处理HBase 服务器运行期间的错误。HBase Master 不保存HBase中的任何数据,HBase 逻辑上表会被划分为多个HRgion,然后存储在HRgion服务器群。HBa原创 2013-11-03 11:29:15 · 1317 阅读 · 0 评论 -
不仅仅是试题,可以学点东西
1. 下列哪些语句关于内存回收的说明是正确的? (b ) A、 程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 2. 下面异常是属于Runtime Exception 的是(abcd)(多选) A、ArithmeticExcept转载 2013-11-03 23:11:08 · 990 阅读 · 0 评论 -
数据结构算法
一.判断链表是否存在环型链表问题: 说明:判断一个链表是否存在环,例如下面这个链表就存在环,n1-->n2-->n3-->n4-->n5-->n2,环的开始结点是n5 解法:这里有个比较简单的解法:设两个指针p1,p2,每次循环p1向前走一步,之向前走两步,直到p2碰到NULL指针(无环)或两个指针相等结束循环算法(有环),即如果两个指针相等则说明存在环。 代码如下:转载 2013-11-04 09:19:48 · 796 阅读 · 0 评论 -
ArrayList和LinkedList比较
一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。 3.对于新增和删除操作add和remove,LinedList比较占优势转载 2013-11-05 23:35:57 · 566 阅读 · 0 评论 -
openfire使用自定义用户表
在最近的项目中使用openfire服务器实现消息推送功能,如果使用openfire自带的用户表,需要维护两张用户表,不是很方便,如果openfire能够直接使用现有系统的用户表就方便多了,而事实上openfire已经为我们考虑到了这一点,我们只需要做一些相关配置就可以了。 原理 研究了下openfire的源码,发现实现此点的关键在于data provider的应用,简单来说,就是在程序中需转载 2013-11-06 20:15:41 · 1764 阅读 · 0 评论 -
基于XMPP协议(openfire服务器)的消息推送实现
消息推送实现原理 这里的消息推送,通常是指由服务器端向客户端发送的一些消息,比如待办事宜、新闻等等。 从技术角度来看,消息推送本质上是基于TCP/IP的网络IO流传输,只不过这个IO流看起来由服务器发起,从上面的条件来看,一个基本的消息推送框架的Java实现应该是这样的:有一个用Java NIO实现的服务器,多个用socket连接到此服务器的客户端,然后之间用二转载 2013-11-06 20:16:27 · 2349 阅读 · 0 评论