<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[iris0802的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/iris0802</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; iris0802]]></copyright><item><title><![CDATA[求二叉树中节点的最大距离 即二叉树中相距最远的两个节点之间的距离]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/40142525</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/40142525</guid><author>iris0802</author><pubDate>Thu, 16 Oct 2014 08:44:32 +0800</pubDate><description><![CDATA[public static int height(TreeNode t)
	    // postcondition: returns height of tree with root t
		    {
		        if (t == null)
		        {
		            return 0;
		        }
		        else
		       ]]></description><category></category></item><item><title><![CDATA[进程与线程的区别]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/40087615</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/40087615</guid><author>iris0802</author><pubDate>Tue, 14 Oct 2014 22:48:02 +0800</pubDate><description><![CDATA[线程是指进程内的一个执行单元,也是进程内的可调度实体.
与进程的区别:
(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;
(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源
(3)线程是处理器调度的基本单位,但进程不是.
4)二者均可并发执行.
进程和线程都是由操作系统所体会的程序运行的基本单元，系]]></description><category></category></item><item><title><![CDATA[Java异常机制]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/40084821</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/40084821</guid><author>iris0802</author><pubDate>Tue, 14 Oct 2014 21:10:11 +0800</pubDate><description><![CDATA[try…catch…finally恐怕是大家再熟悉不过的语句了，而且感觉用起来也是很简单，逻辑上似乎也是很容易理解。不过，我亲自体验的“教训”告诉我，这个东西可不是想象中的那么简单、听话。不信？那你看看下面的代码，“猜猜”它执行后的结果会是什么？不要往后看答案、也不许执行代码看真正答案哦。如果你的答案是正确，那么这篇文章你就不用浪费时间看啦。






"background-co]]></description><category></category></item><item><title><![CDATA[简述MapReduce]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/40045203</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/40045203</guid><author>iris0802</author><pubDate>Mon, 13 Oct 2014 14:38:17 +0800</pubDate><description><![CDATA[1. MapReduce是干啥的

因为没找到谷歌的示意图，所以我想借用一张Hadoop项目的结构图来说明下MapReduce所处的位置，如下图。




Hadoop实际上就是谷歌三宝的开源实现，Hadoop MapReduce对应Google MapReduce，HBase对应BigTable，HDFS对应GFS。HDFS（或GFS）为上层提供高效的非结构化存储服务，HBase（]]></description><category></category></item><item><title><![CDATA[java 的深拷贝浅拷贝]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/40040767</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/40040767</guid><author>iris0802</author><pubDate>Mon, 13 Oct 2014 10:22:37 +0800</pubDate><description><![CDATA[一、引言

          对象拷贝(Object Copy)就是将一个对象的属性拷贝到另一个有着相同类类型的对象中去。在程序中拷贝对象是很常见的，主要是为了在新的上下文环境中复用对象的部分或全部数据。Java中有三种类型的对象拷贝：浅拷贝(Shallow Copy)、深拷贝(Deep
 Copy)、延迟拷贝(Lazy Copy)。


二、浅拷贝


        1、什]]></description><category></category></item><item><title><![CDATA[最长递增子序列]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/40008087</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/40008087</guid><author>iris0802</author><pubDate>Sun, 12 Oct 2014 00:51:27 +0800</pubDate><description><![CDATA[找出数组A[1...n]的最大不降子序列。]]></description><category></category></item><item><title><![CDATA[数据库的基本知识]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39995739</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39995739</guid><author>iris0802</author><pubDate>Sat, 11 Oct 2014 16:06:53 +0800</pubDate><description><![CDATA[但是存储过程处理比较复杂的业务时比较实用。
比如说，一个复杂的数据操作。如果你在前台处理的话。可能会涉及到多次数据库连接。但如果你用存储过程的话。就只有一次。从响应时间上来说有优势。
也就是说存储过程可以给我们带来运行效率提高的好处。
另外，程序容易出现 BUG 不稳定，而存储过程，只要数据库不出现问题，基本上是不会出现什么问题的。也就是说从安全上讲，使用了存储过程的系统更加稳定。

数]]></description><category></category></item><item><title><![CDATA[求所有子数组的和的最大值。要求时间复杂度为O(n)]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39994481</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39994481</guid><author>iris0802</author><pubDate>Sat, 11 Oct 2014 15:03:29 +0800</pubDate><description><![CDATA[题目：输入一个整形数组，数组里有正数也有负数，]]></description><category></category></item><item><title><![CDATA[设计一个有限状态机提取C语言文件中的注释(java版）]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39963877</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39963877</guid><author>iris0802</author><pubDate>Fri, 10 Oct 2014 15:47:01 +0800</pubDate><description><![CDATA[这是一道百度笔试题目：设计一个有限状态机提取C语言文件中的注释]]></description><category></category></item><item><title><![CDATA[TCP/IP三次握手协议，四次挥手协议]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39899571</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39899571</guid><author>iris0802</author><pubDate>Wed, 08 Oct 2014 21:21:03 +0800</pubDate><description><![CDATA[TCP(Transmission Control Protocol)　传输控制协议

TCP是主机对主机层的传输控制协议，提供可靠的连接服务，采用三次握手确认建立一个连接:

位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urge]]></description><category></category></item><item><title><![CDATA[Java 垃圾回收机制]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39523147</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39523147</guid><author>iris0802</author><pubDate>Wed, 24 Sep 2014 14:55:58 +0800</pubDate><description><![CDATA[Java平台的垃圾收集机制显著提高了开发者的效率，但是一个实现糟糕的垃圾收集器可能过多地消耗应用程序的资源。在Java虚拟机性能优化系列的第三部分，Eva Andreasson向Java初学者介绍了Java平台的内存模型和垃圾收集机制。她解释了为什么碎片化（而不是垃圾收集）是Java应用程序性能的主要问题所在，以及为什么分代垃圾收集和压缩是目前处理Java应用程序碎片化的主要办法（但不是最有新意的]]></description><category></category></item><item><title><![CDATA[Java 内存泄漏总结]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39522477</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39522477</guid><author>iris0802</author><pubDate>Wed, 24 Sep 2014 14:05:11 +0800</pubDate><description><![CDATA[尽管java虚拟机和垃圾回收机制治理着大部分的内存事务，但是在java软件中还是可能存在内存泄漏的情况。的确，在大型工程中，内存泄漏是一个普遍问题。避免内存泄漏的第一步，就是要了解他们发生的原因。]]></description><category></category></item><item><title><![CDATA[高效寻找素数]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39338013</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39338013</guid><author>iris0802</author><pubDate>Wed, 17 Sep 2014 09:34:00 +0800</pubDate><description><![CDATA[问题：寻找1-10000以内所有的质数（素数）      由于挨个判断质数的时间复杂度很高，故需要一种高效的算法，其实算法真正在逻辑上优化的还是比较少数的，一般都是用时间去换空间，或是以空间去换时间      所以这道题的改进的思路就用挨个打表的方法，从2到根n,把每个数的倍数都置为false，例如，对已2，则2的倍数4,6,8。。。置为false，最后差表为true的就是素数]]></description><category></category></item><item><title><![CDATA[已知二叉树的前序遍历和中序遍历，求二叉树的后序遍历]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39280519</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39280519</guid><author>iris0802</author><pubDate>Mon, 15 Sep 2014 01:30:19 +0800</pubDate><description><![CDATA[问题是：给出一棵二叉树的前序和中序遍历的结果，还原这棵二叉树并输出其后序遍历的结果。]]></description><category></category></item><item><title><![CDATA[经典排序算法（希尔排序，归并排序，快速排序，插入排序）]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39178819</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39178819</guid><author>iris0802</author><pubDate>Wed, 10 Sep 2014 11:08:23 +0800</pubDate><description><![CDATA[public static void main(String[] args){
		int[]a={13,50,6,9,8,7,12,15,100,4};
		//insertSort(a);
		//shellSort(a);
		//quickSort1(a,0,a.length-1);
		int []temp=new int[a.length];
		mergeSort(a,0,a.len]]></description><category></category></item><item><title><![CDATA[两个栈实现一个队列]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39062311</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39062311</guid><author>iris0802</author><pubDate>Thu, 04 Sep 2014 23:01:35 +0800</pubDate><description><![CDATA[入队时，将元素压入s1。
出队时，将s1的元素逐个“倒入”（弹出并压入）s2，将s2的顶元素弹出作为出队元素，之后再将s2剩下的元素逐个“倒回”s1。
见下面示意图：
 

 
上述思路，可行性毋庸置疑。但有一个细节是可以优化一下的。即：在出队时，将s1的元素逐个“倒入”s2时，原在s1栈底的元素，不用“倒入”s2（即只“倒”s1.Count()-1个），可直接弹出作为出队元素返回。这]]></description><category></category></item><item><title><![CDATA[二叉树中和为某一值的路径]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39022681</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39022681</guid><author>iris0802</author><pubDate>Wed, 03 Sep 2014 09:01:11 +0800</pubDate><description><![CDATA[题目：输入一颗二叉树和一个整数，打印出]]></description><category></category></item><item><title><![CDATA[二叉树最大路径和]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39013273</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39013273</guid><author>iris0802</author><pubDate>Tue, 02 Sep 2014 22:22:42 +0800</pubDate><description><![CDATA[问题给出一个二叉树，找到其中的最大路径和。
路径可以从树中任意一个节点开始和结束。
例如：
给出如下二叉树，
       1
      / \
    2    3
返回6。]]></description><category></category></item><item><title><![CDATA[Tir（ 字典树）入门及实现]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/39005293</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/39005293</guid><author>iris0802</author><pubDate>Tue, 02 Sep 2014 13:47:09 +0800</pubDate><description><![CDATA[Trie树，又称单词查找树或键树，是一种树形结构，是一种哈希树的变种。 典型应用是用于统计和排序大量的字符串（但不仅限于字符串）， 所以经常被搜索引擎系统用于文本词频统计。

它的优点是：
  利用字符串的公共前缀来节约存储空间，最大限度的减少无谓的字符串比较，查询效率比哈希表高。

  比如说我们想储存3个单词，sky、skyline、skymoon。如果只是单纯的按照以前的字符数组存]]></description><category></category></item><item><title><![CDATA[Linux面试及基础知识]]></title><link>https://blog.youkuaiyun.com/iris0802/article/details/38949639</link><guid>https://blog.youkuaiyun.com/iris0802/article/details/38949639</guid><author>iris0802</author><pubDate>Sat, 30 Aug 2014 23:11:28 +0800</pubDate><description><![CDATA[一．填空题：
1. 在Linux系统中，以 文件 方式访问设备 。
2. Linux内核引导时，从文件 /etc/fstab 中读取要加载的文件系统。
3. Linux文件系统中每个文件用 i节点 来标识。
4. 全部磁盘块由四个部分组成，分别为引导块 、专用块 、 i节点表块 和数据存储块。
5. 链接分为： 硬链接 和 符号链接 。
6. 超级块包含了i节点表 和 空闲块表 等重要]]></description><category></category></item></channel></rss>