<?xml version="1.0" encoding="UTF-8"?>
  <feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html"><![CDATA[showlife's blog]]></title>
  <subtitle type="html"><![CDATA[googogoogogoogoggogogo]]></subtitle>
  <id>http://www.showlife8.com/</id> 
  <link rel="alternate" type="text/html" href="http://www.showlife8.com/" /> 
  <link rel="self" type="application/atom+xml" href="http://www.showlife8.com/atom.asp" /> 
  <generator uri="http://www.pjhome.net/" version="2.4.1022">PJBlog2</generator> 
  <updated>2010-05-26T05:37:55+08:00</updated> 

  <entry>
	  <title type="html"><![CDATA[我们的世界杯- Android App]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=3" label="Google" /> 
	  <updated>2010-05-26T05:37:55+08:00</updated>
	  <published>2010-05-26T05:37:55+08:00</published>
		  <summary type="html"><![CDATA[2010年南非世界杯是第19屆世界杯，賽程時間爲2010年6月11日至7月11日。<br/>本款應用界面清晰明了易于操作，主要功能包括：<br/>關注球隊（主隊）添加<br/>賽程安排<br/>球隊球員資料<br/>比賽轉播時間<br/>電視查詢<br/>球隊即時比賽結果查詢<br/>球隊新聞查詢<br/>後續版本將提供更多強大的功能，敬請關注。<br/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/z20105265370.png" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/u20105265378.png" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/f201052653715.png" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/4201052653722.png" border="0" alt=""/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/w201052653729.png" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/h201052653735.png" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/d201052653742.png" border="0" alt=""/><br/><br/><img src="http://www.showlife8.com/attachments/month_1005/4201052653754.png" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=184" /> 
	  <id>http://www.showlife8.com/default.asp?id=184</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[【转】排序算法集]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=7" label="搜索引擎" /> 
	  <updated>2010-04-24T22:30:04+08:00</updated>
	  <published>2010-04-24T22:30:04+08:00</published>
		  <summary type="html"><![CDATA[最近在研究搜索排序算法，看到篇不错的文章。。转来分享一下<br/><br/>从大家熟悉的冒泡排序开始：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;冒泡排序&nbsp;Bubble&nbsp;Sort&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理:<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;比较n轮，每一轮都把最大元素移动到数组后端。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;bubbleSort(int[]&nbsp;result)&nbsp;{<br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;ARRAYSIZE;&nbsp;i&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i&nbsp;+&nbsp;1;&nbsp;j&nbsp;&lt;&nbsp;ARRAYSIZE;&nbsp;j&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(result[i]&nbsp;&gt;&nbsp;result[j])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;交换<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(result,&nbsp;i,&nbsp;j);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>插入排序：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;插入排序&nbsp;Ins&#101;rt&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;从第二个元素开始，因为左侧的数组为排序后的数组，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;只要将当前元素插入到左侧数组的适当位置，就能保持数组为有序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;然后处理第三个元素...直到最后一个元素<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;ins&#101;rtSort(int[]&nbsp;result)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;1;&nbsp;i&nbsp;&lt;&nbsp;ARRAYSIZE;&nbsp;i&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i;&nbsp;j&nbsp;&gt;&nbsp;0&nbsp;&amp;&amp;&nbsp;result[j]&nbsp;&lt;&nbsp;result[j&nbsp;-&nbsp;1];&nbsp;j&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(result,&nbsp;j,&nbsp;j&nbsp;-1);<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>折半搜索插入排序：<br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;折半搜索插入排序&nbsp;BinarySearchThenIns&#101;rt&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理与插入排序类似，不同点在于寻找插入位置的时候，采取的是折半查找方法<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;bins&#101;rtSort(int[]&nbsp;result)&nbsp;{<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;1;&nbsp;i&nbsp;&lt;&nbsp;ARRAYSIZE;&nbsp;i&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(result[i]&nbsp;&lt;&nbsp;result[0])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;temp&nbsp;=&nbsp;result[i];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i&nbsp;-&nbsp;1;&nbsp;j&nbsp;&gt;=&nbsp;0;&nbsp;j&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result[j&nbsp;+&nbsp;1]&nbsp;=&nbsp;result[j];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result[0]&nbsp;=&nbsp;temp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(result[i]&nbsp;&lt;&nbsp;result[i&nbsp;-&nbsp;1])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;larrange&nbsp;=&nbsp;0;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;rarrange&nbsp;=&nbsp;i&nbsp;-&nbsp;1;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(rarrange&nbsp;-&nbsp;larrange&nbsp;&gt;&nbsp;1)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;p&nbsp;=&nbsp;(rarrange&nbsp;+&nbsp;larrange&nbsp;+&nbsp;1)/2;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(result[i]&nbsp;&lt;&nbsp;result[p])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rarrange&nbsp;=&nbsp;p;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;larrange&nbsp;=&nbsp;p;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;temp&nbsp;=&nbsp;result[i];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i&nbsp;-&nbsp;1;&nbsp;j&nbsp;&gt;=&nbsp;larrange&nbsp;+&nbsp;1;&nbsp;j&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result[j&nbsp;+&nbsp;1]&nbsp;=&nbsp;result[j];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result[larrange&nbsp;+&nbsp;1]&nbsp;=&nbsp;temp;<br/>&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>然后是堆排序：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;堆排序&nbsp;Heap&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理:<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;利用了堆的易调整的特点来进行的一种选择排序。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;以大顶堆为例，什么是大顶堆？<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;大顶堆的逻辑结构是一颗完全二叉树，[把满二叉树最后一层右侧的一些叶子摘掉]<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;假设其高度为h，则元素个数介于<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;1&nbsp;+&nbsp;2&nbsp;+&nbsp;...&nbsp;+&nbsp;exp(2,&nbsp;h&nbsp;-&nbsp;2)&nbsp;~&nbsp;1&nbsp;+&nbsp;2&nbsp;+&nbsp;...&nbsp;+&nbsp;exp(2,&nbsp;h&nbsp;-1)之间<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;符合如下定义为大顶堆：(此定义基于大顶堆的顺序存储结构)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;array.length&nbsp;-&nbsp;1;&nbsp;i&nbsp;&gt;&nbsp;0;&nbsp;i&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;任意&nbsp;array[i]&nbsp;&lt;=&nbsp;array[(i&nbsp;-&nbsp;1)/2];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(还有一种是小顶堆，不同的只是比较时候的大于号方向不同)。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;容易想到，当堆顶元素(MaxValue)被替换后，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;至多只要在双亲和子节点间进行h（大顶堆的高度）&nbsp;-&nbsp;1次交换，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(参照交换算法可以发现比较次数一般来说是交换次数的2~3倍，也不算多)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;就可以形成新的大顶堆。由此大大提高了排序效率。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;heapSort(int[]&nbsp;result)&nbsp;{<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;初始化无序数组为大顶堆<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;result.length&nbsp;-&nbsp;2;&nbsp;i&nbsp;&gt;=&nbsp;0;&nbsp;i&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;adjustHeap(result,&nbsp;i,&nbsp;result.length&nbsp;-&nbsp;1);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;将最大值元素交换至数组末端，并调整前端为大顶堆，循环直至前端只剩下一个元素<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;result.length&nbsp;-&nbsp;1;&nbsp;i&nbsp;&gt;&nbsp;0;&nbsp;i&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(result,&nbsp;0,&nbsp;i);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;adjustHeap(result,&nbsp;0,&nbsp;i&nbsp;-&nbsp;1);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;将除顶(不确定是否满足大顶堆条件)外，左子树和右子树都为一个堆的数组调整为大顶堆<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;array&nbsp;待调整数组<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;from&nbsp;&nbsp;顶的指针<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;to&nbsp;&nbsp;&nbsp;&nbsp;调整的末端(就是调整array[from]...array[to]这一段为一个大顶堆)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;void&nbsp;adjustHeap(int[]&nbsp;array,&nbsp;int&nbsp;from,&nbsp;int&nbsp;to)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;i&nbsp;=&nbsp;0;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;比较节省比较次数的方法，只要比较到比其左右子树的根结点的值都大，就可以return了<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;2&nbsp;&lt;=&nbsp;to)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(array[from&nbsp;+&nbsp;i]&nbsp;&lt;&nbsp;array[from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;1]<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;array[from&nbsp;+&nbsp;i]&nbsp;&lt;&nbsp;array[from&nbsp;&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;2])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(array[from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;1]&nbsp;&gt;&nbsp;array[from&nbsp;&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;2])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(array,&nbsp;from&nbsp;+&nbsp;i,&nbsp;from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;1);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i&nbsp;+=&nbsp;i&nbsp;+&nbsp;1;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(array,&nbsp;from&nbsp;+&nbsp;i,&nbsp;from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;2);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i&nbsp;+=&nbsp;i&nbsp;+&nbsp;2;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;1&nbsp;==&nbsp;to<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;array[from&nbsp;+&nbsp;i]&nbsp;&lt;&nbsp;array[from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;1])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;有时会出现仅存在左子树的情况(左子树为调整数组的最后一个元素)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(array,&nbsp;from&nbsp;+&nbsp;i,&nbsp;from&nbsp;+&nbsp;2&nbsp;*&nbsp;i&nbsp;+&nbsp;1);<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>快速排序：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;快速排序&nbsp;Quick&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;选择数组中的一个元素作为标准，将所有比标准小的元素放到左边，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;所有比标准大的元素放到右边。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;并对左边和右边的元素做一样的快速排序过程。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;quickSort(int[]&nbsp;result)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;quick(result,&nbsp;0,&nbsp;result.length&nbsp;-&nbsp;1);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;选择数组中的一个元素作为标准，将所有比标准小的元素放到左边，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;所有比标准大的元素放到右边。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;并对左边和右边的元素做一样的快速排序过程。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;array<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;startIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;endIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;void&nbsp;quick(int[]&nbsp;array,&nbsp;int&nbsp;startIndex,&nbsp;int&nbsp;endIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;pIndex&nbsp;=&nbsp;startIndex;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;startIndex&nbsp;+&nbsp;1;&nbsp;i&nbsp;&lt;=&nbsp;endIndex;&nbsp;i&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(array[i]&nbsp;&lt;&nbsp;array[pIndex])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;temp&nbsp;=&nbsp;array[i];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i;&nbsp;j&nbsp;&gt;&nbsp;pIndex;&nbsp;j&nbsp;--)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array[j]&nbsp;=&nbsp;array[j&nbsp;-&nbsp;1];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array[pIndex]&nbsp;=&nbsp;temp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pIndex&nbsp;++;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(pIndex&nbsp;-&nbsp;startIndex&nbsp;&gt;&nbsp;1)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;quick(array,&nbsp;startIndex,&nbsp;pIndex&nbsp;-&nbsp;1);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(endIndex&nbsp;-&nbsp;pIndex&nbsp;&gt;&nbsp;1)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;quick(array,&nbsp;pIndex&nbsp;+&nbsp;1,&nbsp;endIndex);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;<br/>二路归并排序：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;归并排序&nbsp;Merge&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;分治。将数组分为左，右两部分，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;首先将数组分为左右两部分，分别进行归并排序，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;然后合并左右两部分的排序结果就构成了一个有序数组。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;mergeSort(int[]&nbsp;result)&nbsp;{<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mergeR(result,&nbsp;0,&nbsp;result.length&nbsp;-&nbsp;1);<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;递归对数组进行归并排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;array<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;startIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;endIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;void&nbsp;mergeR(int[]&nbsp;array,&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;startIndex,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;endIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(startIndex&nbsp;&lt;&nbsp;endIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;mid&nbsp;=&nbsp;(startIndex&nbsp;+&nbsp;endIndex)/2;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;对包括中点在内的左侧数组区间进行归并排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mergeR(array,&nbsp;startIndex,&nbsp;mid);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;对中点之后的右侧数组区间进行归并排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mergeR(array,&nbsp;mid&nbsp;+&nbsp;1,&nbsp;endIndex);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;合并左和右两个独立的有序区间为一个有序区间<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;merge(array,&nbsp;startIndex,&nbsp;mid,&nbsp;endIndex);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/><br/>&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;将array数组的两个有序区间array[startIndex]...array[midIndex]<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;和array[midIndex&nbsp;+&nbsp;1]...array[endIndex]合并为一个有序区间<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;array[startIndex]...array[endIndex]<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;array<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;startIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;midIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;endIndex<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;void&nbsp;merge(int[]&nbsp;array,&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;startIndex,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;midIndex,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;endIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int[]&nbsp;resultTemp&nbsp;=&nbsp;new&nbsp;int[endIndex&nbsp;-&nbsp;startIndex&nbsp;+&nbsp;1];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;pr&nbsp;=&nbsp;0;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;p1&nbsp;=&nbsp;startIndex;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;p2&nbsp;=&nbsp;midIndex&nbsp;+&nbsp;1;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(p1&nbsp;&lt;=&nbsp;midIndex&nbsp;||&nbsp;p2&nbsp;&lt;=&nbsp;endIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(p1&nbsp;==&nbsp;midIndex&nbsp;+&nbsp;1)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(p2&nbsp;&lt;=&nbsp;endIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resultTemp[pr&nbsp;++]&nbsp;=&nbsp;array[p2&nbsp;++];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(p2&nbsp;==&nbsp;endIndex&nbsp;+&nbsp;1)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(p1&nbsp;&lt;=&nbsp;midIndex)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resultTemp[pr&nbsp;++]&nbsp;=&nbsp;array[p1&nbsp;++];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(array[p1]&nbsp;&lt;=&nbsp;array[p2])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resultTemp[pr&nbsp;++]&nbsp;=&nbsp;array[p1&nbsp;++];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resultTemp[pr&nbsp;++]&nbsp;=&nbsp;array[p2&nbsp;++];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(p1&nbsp;=&nbsp;startIndex,&nbsp;p2&nbsp;=&nbsp;0;&nbsp;p1&nbsp;&lt;=&nbsp;endIndex;&nbsp;p1&nbsp;++,&nbsp;p2&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array[p1]&nbsp;=&nbsp;resultTemp[p2];<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>希尔排序：<br/>&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;希尔排序&nbsp;Shell&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;分别以数组大小的1/2,1/4,1/8....1的作为步伐d，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;将array[i],array[i&nbsp;+&nbsp;d],array[i&nbsp;+&nbsp;2d]....array[i&nbsp;+&nbsp;nd]看作一个数组进行排序，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;与插入排序相比，因为可以更有效的消除逆序，因此交换次数是很少的，<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;缺点是比较次数过多<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;shellSort(int[]&nbsp;result)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;d&nbsp;=&nbsp;ARRAYSIZE/2;&nbsp;d&nbsp;&gt;&nbsp;0;&nbsp;d&nbsp;=&nbsp;d/2)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//print(result);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;d;&nbsp;i&nbsp;&lt;&nbsp;ARRAYSIZE;&nbsp;i&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i;&nbsp;j&nbsp;&gt;=&nbsp;d;&nbsp;j&nbsp;=&nbsp;j&nbsp;-&nbsp;d)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(result[j]&nbsp;&lt;&nbsp;result[j&nbsp;-&nbsp;d])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(result,&nbsp;j,&nbsp;j&nbsp;-&nbsp;d);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>简单选择排序：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;简单选择排序&nbsp;SimpleSel&#101;ction&nbsp;Sort<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&lt;p&gt;原理：每遍历未排序部分一次都选出一个最小值，并将最小值元素移动到数组前端<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;simpleSel&#101;ctionSort(int[]&nbsp;result)&nbsp;{<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;重复此过程：选取最小值，并将其交换至数组前端<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;minIndex&nbsp;=&nbsp;0;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;result.length;&nbsp;i&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;minIndex&nbsp;=&nbsp;i;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j&nbsp;=&nbsp;i&nbsp;+&nbsp;1;&nbsp;j&nbsp;&lt;&nbsp;result.length;&nbsp;j&nbsp;++)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(result[j]&nbsp;&lt;&nbsp;result[minIndex])&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;minIndex&nbsp;=&nbsp;j;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(result,&nbsp;minIndex,&nbsp;i);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;result;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>以下是程序中有用到的工具函数：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/**<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;交换元素<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br/>&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;void&nbsp;swap(int[]&nbsp;arr,&nbsp;int&nbsp;i,&nbsp;int&nbsp;j)&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;temp&nbsp;=&nbsp;arr[i];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arr[i]&nbsp;=&nbsp;arr[j];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arr[j]&nbsp;=&nbsp;temp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/>}<br/>&nbsp;<br/><br/>在数组大小为32000的时候，测试得到如下结果：<br/>bubble&nbsp;ok,&nbsp;compare:511984000&nbsp;move:369884430&nbsp;time:7719ms<br/>ins&#101;rt&nbsp;ok,&nbsp;compare:256844895&nbsp;move:256844895&nbsp;time:2891ms<br/>bins&#101;rt&nbsp;ok,&nbsp;compare:466378&nbsp;move:256876884&nbsp;time:1828ms<br/>shell&nbsp;ok,&nbsp;compare:822653060&nbsp;move:785643&nbsp;time:6015ms<br/>quick&nbsp;ok,&nbsp;compare:568480&nbsp;move:257132432&nbsp;time:1813ms<br/>simple&nbsp;sel&#101;ct&nbsp;ok,&nbsp;compare:511984000&nbsp;move:32000&nbsp;time:3141ms<br/>merge&nbsp;ok,&nbsp;compare:220635&nbsp;move:958464&nbsp;time:15ms<br/>heap&nbsp;ok,&nbsp;compare:1770388&nbsp;move:1550523&nbsp;time:31ms<br/><br/>时间性能上，Merge&nbsp;&gt;&nbsp;Heap&nbsp;&gt;&nbsp;Quick&nbsp;&gt;&nbsp;BIns&#101;rt&nbsp;&gt;&nbsp;Ins&#101;rt&nbsp;&gt;&nbsp;Simple&nbsp;Sel&#101;ction&nbsp;&gt;&nbsp;Shell&nbsp;&gt;&nbsp;Bubble<br/><br/>比较次数上，Shell&nbsp;&gt;&nbsp;Bubble&nbsp;=&nbsp;SimpleSel&#101;ction&nbsp;&gt;&nbsp;Ins&#101;rt&nbsp;&gt;&nbsp;Heap&nbsp;&gt;&nbsp;Quick&nbsp;&gt;&nbsp;BIns&#101;rt&nbsp;&gt;&nbsp;Merge<br/><br/>数组元素的交换次数上，Bubble&nbsp;&gt;&nbsp;Quick&nbsp;&gt;&nbsp;BIns&#101;rt&nbsp;&gt;&nbsp;Ins&#101;rt&nbsp;&gt;&nbsp;Heap&nbsp;&gt;&nbsp;Merge&nbsp;&gt;&nbsp;Shell&nbsp;&gt;&nbsp;SimpleSel&#101;ction<br/><br/>内存的消耗上，Merge&nbsp;&gt;&nbsp;Heap&nbsp;&gt;&nbsp;Quick&nbsp;=&nbsp;BIns&#101;rt&nbsp;=&nbsp;Ins&#101;rt&nbsp;=&nbsp;SimpleSel&#101;ction&nbsp;=&nbsp;Shell&nbsp;=&nbsp;Bubble<br/><br/>因为只是根据一个特定序列得到的测试结果，所以不一定可以完全准确的反映各算法的性能。<br/>但结合各算法的实现和统计结果，可以得出以下建议：<br/>1.&nbsp;大数据量的情况下，如果对时间效率有苛刻要求，应优先采用MergeSort。内存不足问题可利用分布式的计算环境来解决。<br/>2.&nbsp;在内存相对有限的情况下，采用堆排序和快速排序是不错的选择。<br/>3.&nbsp;如果在读写速度较慢的介质上操作，应该用简单选择排序。(这点我也不很确定，下次增加读写次数的统计来验证)<br/>4.&nbsp;待排序数据集的特性很大程度上影响到算法的效率，算法的采用应根据实际数据的情况来选择。]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=183" /> 
	  <id>http://www.showlife8.com/default.asp?id=183</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[苏州新科兰德科技有限公司]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=8" label="个人方面" /> 
	  <updated>2010-03-27T04:36:29+08:00</updated>
	  <published>2010-03-27T04:36:29+08:00</published>
		  <summary type="html"><![CDATA[公司业务涵盖计算机系统设备集成及周边产品、软件开发及外包服务、企业IT服务和解决方案、手机应用程序的开发。公司致力于创新科技，为客户提供最好的软&nbsp;硬件产品与服务，同时致力于极大的节约客户的IT投资成本。<br/><br/><br/>公司的企业宗旨是:创新理念、创新科技、创新模式、创新生活。<br/><br/><br/>公司为企业客户提供的所有产品与服务都致力注重人性设计，公司相信科技运用的最终目的都是为了改善人的生活而服务。<br/><br/><br/>人才是企业核心竞争力，公司重视每一位人才。公司致力于为每一位成员提供实现自己人生价值和梦想的良好宽松的工作环境，合理的用人机制使得每一位成员都能&nbsp;在公司大家庭中找到自己的位置，时尚的理念与模式使得每一位成员都能够在工作中娱乐，娱乐中工作，工作将不再寂寞。<br/><br/><br/><a href="http://www.think-land.com" target="_blank">http://www.think-land.com</a>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=182" /> 
	  <id>http://www.showlife8.com/default.asp?id=182</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[Stanford ME LAB]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=8" label="个人方面" /> 
	  <updated>2009-07-04T12:50:59+08:00</updated>
	  <published>2009-07-04T12:50:59+08:00</published>
		  <summary type="html"><![CDATA[<br/>照片taken&nbsp;by&nbsp;李放&nbsp;&nbsp;。。这是他们me&nbsp;lab&nbsp;&nbsp;羡慕他跟任伟&nbsp;在这种环境下&nbsp;工作学习。。。相比下cs&nbsp;的lab&nbsp;除了pc&nbsp;就是&nbsp;mac..一堆机器缺少了一种感觉，家的感觉<br/><br/>之后我的公司&nbsp;打算跟这种风格。<br/><br/><img src="http://www.showlife8.com/attachments/month_0907/r200974125016.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0907/520097412496.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0907/h200974124926.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0907/a200974124936.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0907/h200974124947.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0907/l200974125034.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0907/0200974125047.jpg" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=181" /> 
	  <id>http://www.showlife8.com/default.asp?id=181</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[天府之行]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=8" label="个人方面" /> 
	  <updated>2009-06-20T07:57:55+08:00</updated>
	  <published>2009-06-20T07:57:55+08:00</published>
		  <summary type="html"><![CDATA[前段时间百忙中抽空，，。。。来到了天府。。应该算是“公干”。。。顺便游览了一下。拍了点照片分享分享<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/r20096208131.jpg" border="0" alt=""/><br/>在机场也不忘看书学习&nbsp;这孩子咋这么有出息呢<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/0200962075329.jpg" border="0" alt=""/><br/>门神<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/m20096207542.jpg" border="0" alt=""/><br/>在宽窄巷子随便找了家茶馆&nbsp;饭馆&nbsp;都是这么的别致<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/j200962075422.jpg" border="0" alt=""/><br/>闲暇时间&nbsp;过来泡泡茶跟朋友聊聊天多么自在<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/w20096208512.jpg" border="0" alt=""/><br/>多有意境啊<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/y20096208126.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0906/c200962075445.jpg" border="0" alt=""/><br/>星巴克都这么有味道<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/820096207551.jpg" border="0" alt=""/><br/>武侯祠的竹林小道<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/i20096208528.jpg" border="0" alt=""/><br/>touch&nbsp;the&nbsp;wall.&nbsp;touch&nbsp;the&nbsp;history&nbsp;。。。美女啊&nbsp;美女。。。<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/e200962075519.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0906/4200962075536.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0906/v200962075554.jpg" border="0" alt=""/><br/>锦里跟武侯祠一步之遥，逛完武侯祠&nbsp;来锦里吃吃小吃&nbsp;不错<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/v200962075610.jpg" border="0" alt=""/><br/>成都市中心的&nbsp;国父&nbsp;and&nbsp;国父名言&nbsp;天下为公<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/b200962075631.jpg" border="0" alt=""/><br/>大熊猫。。注意这不是在交配。。在喂食<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/a200962075647.jpg" border="0" alt=""/><br/>熊猫喝水<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/4200962075710.jpg" border="0" alt=""/><br/>找个树林小馆好乘凉<br/><br/><img src="http://www.showlife8.com/attachments/month_0906/3200962075724.jpg" border="0" alt=""/><br/><br/><br/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=180" /> 
	  <id>http://www.showlife8.com/default.asp?id=180</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[个人小结]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=8" label="个人方面" /> 
	  <updated>2009-06-20T03:44:23+08:00</updated>
	  <published>2009-06-20T03:44:23+08:00</published>
		  <summary type="html"><![CDATA[话说几个月前的某天&nbsp;stanford苏州市人民政府招聘人才酒会上&nbsp;被鼓动回国创业&nbsp;。。负责人才招聘的官员大谈这个国内政策多好。。30-500w&nbsp;初始资金，300平米办公用地免费一年，100平米住房免费&nbsp;3年免税。。。<br/><br/>我回了&nbsp;跟老友王峰联手，起初是要做个智能化社区。idea是非常的好，很新颖&nbsp;是人多说有前途，前段时间拜访了一个归国的前辈&nbsp;，一个有经验的教授细谈了以后，感触良多&nbsp;决定自动放弃<br/>原因有几个：&nbsp;1.网络容易起家是没错，但网络也是无底洞，要靠砸钱&nbsp;砸起来的，就算这500w给了我&nbsp;后续还是一笔不小的投资&nbsp;&nbsp;2.sns&nbsp;现在过多&nbsp;感觉这种随大流的没前途&nbsp;即使想法很好。但不能短期内创造利益，不符合我的初衷&nbsp;&nbsp;3.sns至今还没有找到一个好的盈利模式，基本来说成功率很低<br/><br/>虽然被泼了凉水不过想想也对，&nbsp;还是要做软件设备。。集成设备，跟网络不同设备这种卖一套那就是实实在在的钱，最近我们利用朋友的关系就在沛县谈一套煤矿安保系统。。wsn项目，如果做成&nbsp;那么收入还是相当可观的<br/><br/>另外周的&nbsp;微网&nbsp;技术这个也是我考虑的方向，企业节能是目前的大趋势，...当然3g手机是我的老本行这个我不会放弃。。拿哪个项目去申请这500w。。最近有些迷茫&nbsp;这个月应该会定下来吧<br/><br/>再讲点不相干的八卦，今天我的partner跟他老婆闹不愉快，还是为了房子的事情，几年了还是为买房烦真是无聊。告诉你王峰别烦了，指望她们来理解我们，站在我们的立场考虑问题下辈子吧，她们只会觉得自己委屈，自己脾气有多差自己不知道，一群井底之蛙。<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=179" /> 
	  <id>http://www.showlife8.com/default.asp?id=179</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[西塘游记]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=8" label="个人方面" /> 
	  <updated>2009-05-29T03:27:11+08:00</updated>
	  <published>2009-05-29T03:27:11+08:00</published>
		  <summary type="html"><![CDATA[好久没有出去玩啦，尤其是回国之后，端午节抽了个时间，开车去西塘一日游<br/>偶还是一如既往&nbsp;热爱生活&nbsp;热爱旅行&nbsp;享受阳光&nbsp;无拘无束&nbsp;自由自在&nbsp;这小日子多滋润啊<br/><br/><strong>景篇</strong>：小桥流水人家<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/c200952933933.jpg" border="0" alt=""/><br/>摇啊摇&nbsp;摇到外婆桥<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/r200952934010.jpg" border="0" alt=""/><br/>招牌很响，&nbsp;其实是家饭店，很有名<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/m2009529447.jpg" border="0" alt=""/><br/>oh..<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/w200952933627.jpg" border="0" alt=""/><br/>这张照片&nbsp;来至&nbsp;flickr<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/x200952931839.jpg" border="0" alt=""/><br/>这效果。。。忘记了在哪个桥上拍的&nbsp;嘿嘿<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/t200952932632.jpg" border="0" alt=""/><br/>好个&nbsp;又一村。。&nbsp;&nbsp;还是又一“春”&nbsp;哈哈<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/n20095293191.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/d200952932034.jpg" border="0" alt=""/><br/>呵呵小酒&nbsp;吃吃小菜&nbsp;乐栽乐栽<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/z20095293233.jpg" border="0" alt=""/><br/>小道<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/x20095293499.jpg" border="0" alt=""/><br/>哎&nbsp;美啊<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/v20095293469.jpg" border="0" alt=""/><br/>来张雨季的西塘对比。。这张来至flickr<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/a200952932613.jpg" border="0" alt=""/><br/>臭豆腐不错的。<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/l20095293446.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/t200952934425.jpg" border="0" alt=""/><br/>河畔吃饭&nbsp;多有情调，不错&nbsp;晚上就在这吃了<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/0200952934440.jpg" border="0" alt=""/><br/>坐着小船摇啊摇<br/><br/><br/><strong>人物篇</strong>：和谐。。。<br/><br/>本来走路走了半天&nbsp;累了&nbsp;渴了&nbsp;热了。找了一个&nbsp;冰激淋&amp;酒吧&nbsp;坐下。遇到了一个天使。she&nbsp;is&nbsp;so&nbsp;pretty<br/>貌似她妈妈是驴友，在这个酒吧打工，边旅行&nbsp;边打工的那种，欣赏她们。。陪她玩了半天&nbsp;。又是给我打针&nbsp;又给我吃药&nbsp;贴创口贴&nbsp;好忙啊她。&nbsp;<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/q200952942545.jpg" border="0" alt=""/><br/>开心了。<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/4200952943123.jpg" border="0" alt=""/><br/>毫无疑问&nbsp;，我会是个好父亲<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/j200952942656.jpg" border="0" alt=""/><br/>再来2张天使照<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/w200952942758.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/9200952943036.jpg" border="0" alt=""/><br/>love<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/c200952944158.jpg" border="0" alt=""/><br/>晚上河畔吃饭&nbsp;多有feeling&nbsp;啊<br/><br/><br/><strong>美食篇</strong>：来西塘吃小吃那是肯定的,一路吃&nbsp;一路逛，大餐小餐吃了无数，oh&nbsp;im&nbsp;loving&nbsp;it<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/320095294516.jpg" border="0" alt=""/><br/>先来个臭豆腐<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/q20095294535.jpg" border="0" alt=""/><br/>不知道什么东东<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/m20095294559.jpg" border="0" alt=""/><br/>端午节&nbsp;粽子是肯定要吃的，我克了一个蛋黄咸肉粽，<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/420095294630.jpg" border="0" alt=""/><br/>西塘的酒<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/o20095294733.jpg" border="0" alt=""/><br/>西塘著名的糕点，先切的呢<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/720095294846.jpg" border="0" alt=""/><br/>这个薄饼貌似很小的时候吃过<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/t20095294937.jpg" border="0" alt=""/><br/>这个是米酒<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/x200952941016.jpg" border="0" alt=""/><br/>小混沌<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/v200952941051.jpg" border="0" alt=""/><br/>天好热，绿豆汤，喝了一半&nbsp;才想到要拍，品相不好&nbsp;抱歉<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/l200952941149.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/j200952941242.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/d200952941325.jpg" border="0" alt=""/><br/>龙蹄。除非我饿晕&nbsp;否则&nbsp;正常情况下是没有胃口的<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/u200952941354.jpg" border="0" alt=""/><br/>粉蒸肉<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/4200952941429.jpg" border="0" alt=""/><br/>麦芽糖<br/><br/><br/><strong>杂篇</strong>：<br/><img src="http://www.showlife8.com/attachments/month_0905/720095296130.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/j2009529622.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/t20095296228.jpg" border="0" alt=""/><br/>酒吧<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/820095296316.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/p20095296333.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/j20095296414.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/o20095296433.jpg" border="0" alt=""/><br/>同志啊<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/c20095296512.jpg" border="0" alt=""/><br/>选自己的名字<br/><br/><img src="http://www.showlife8.com/attachments/month_0905/l20095296526.jpg" border="0" alt=""/><br/><br/><br/><img src="http://www.showlife8.com/attachments/month_0905/m20095296545.jpg" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=178" /> 
	  <id>http://www.showlife8.com/default.asp?id=178</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[Yovee国际 &amp; 高性能计算机设备及系统公司]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=8" label="个人方面" /> 
	  <updated>2009-05-03T00:30:13+08:00</updated>
	  <published>2009-05-03T00:30:13+08:00</published>
		  <summary type="html"><![CDATA[<br/>广告：加州高性能计算机设备及系统公司<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;www.cacps.com.cn<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Yovee,&nbsp;Inc<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;www.yovee.com.cn（制作中）<br/><br/>欢迎访问，欢迎合作]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=176" /> 
	  <id>http://www.showlife8.com/default.asp?id=176</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[Google Summer Code 2009]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=3" label="Google" /> 
	  <updated>2009-03-26T03:36:25+08:00</updated>
	  <published>2009-03-26T03:36:25+08:00</published>
		  <summary type="html"><![CDATA[<br/>一年一度的&nbsp;google&nbsp;summer&nbsp;code&nbsp;报名又开始了。。对象貌似针对美国学生<br/><br/>地址&nbsp;<a href="http://socghop.appspot.com" target="_blank">http://socghop.appspot.com</a><br/><br/>去年功亏一篑，忙于该死的final&nbsp;project&nbsp;...webmail...报告胡乱一下，，枉费了delphij老大的推荐&nbsp;跟内部消息&nbsp;哎。。今年提交一个自认为还不错的idea&nbsp;。势必要拿下，不为别的。就是为了$5000&nbsp;us&nbsp;dollars&nbsp;也要拿下啊]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=174" /> 
	  <id>http://www.showlife8.com/default.asp?id=174</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[Apache vs Nginx vs Lighttpd]]></title>
	  <author>
		 <name>showlife</name>
		 <uri>http://www.showlife8.com/</uri>
		 <email>lei.zuo@ieee.org</email>
	  </author>
	  <category term="" scheme="http://www.showlife8.com/default.asp?cateID=9" label="网站建设" /> 
	  <updated>2009-02-13T05:09:57+08:00</updated>
	  <published>2009-02-13T05:09:57+08:00</published>
		  <summary type="html"><![CDATA[最近因为Final&nbsp;Project的原因接触了解了下当下几款流行的Web&nbsp;Server.<br/><br/>Apache不用多说了，算是当前应用最广泛的开源Web&nbsp;Server,&nbsp;只是在我看来过于繁琐，影响了性能呢个，Nginx&nbsp;，Lighttpd&nbsp;这两款优秀的轻量级Web&nbsp;Server的性能,速度,资源占用方面的优势越来越受到推崇.&nbsp;Lighttpd&nbsp;伴随Youtube的成功而名声大噪，而Nginx则是在俄罗斯主流的http&nbsp;Server，最近逐渐流行起来。<br/><br/>相比Apache&nbsp;，Nginx&nbsp;，Lighttpd&nbsp;的优势在于对Flash&nbsp;streaming和对Fastcgi/Mongrel的有效支持，在静态资源处理上（读取图片，文件），性能上也不是apache所能比拟，尤其运用在ROR等脚本语言之上，<br/><br/>就Nginx&nbsp;，Lighttpd之间的比较，Nginx&nbsp;对于&nbsp;HTTP&nbsp;Proxy&nbsp;,URL&nbsp;rewrite的支持要更强一些&nbsp;，Lighttpd则在Fastcgi运行上有一定的优势。另外最大的区别在于Buffer分配上，Nginx默认的size只有8kb&nbsp;（当然是可修改）这个Size对于现在网页动辄&nbsp;50-100KB的情况来说，显得过于保守，如果应用服务器的返回数据无法一次填满Web服务器的Buffer，那么就会导致应用服务器和Web服务器之间多次数据传输。Lighttpd并不针对应用服务器的每个连接分配固定的Buffer，而是尽可能的把应用服务器返回的数据一次性接收下来，因此无论应用服务器返回多大的数据量，Lighttpd都是照单全收，胃口非常惊人。<br/><br/>还有一款优秀的商业Web服务器：Litespeed，根据测试数据来看，它对静态资源的处理要比Nginx&nbsp;，Lighttpd更强，另外Litespeed还为ROR专门开发了个协议lsapi,貌似能够根据请求繁忙程度，动态创建和销毁ruby进程，节省资源，但也留下后门，有安全隐患。具体可访问&nbsp;<a href="http://www.litespeedtech.com" target="_blank">http://www.litespeedtech.com</a><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.showlife8.com/default.asp?id=173" /> 
	  <id>http://www.showlife8.com/default.asp?id=173</id> 
  </entry>	
		
</feed>