﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-李宁的极客世界-随笔分类-algorithm</title><link>http://www.blogjava.net/nokiaguy/category/31410.html</link><description /><language>zh-cn</language><lastBuildDate>Sun, 03 Nov 2013 10:21:52 GMT</lastBuildDate><pubDate>Sun, 03 Nov 2013 10:21:52 GMT</pubDate><ttl>60</ttl><item><title>Twitter算法面试题详解（Java实现）</title><link>http://www.blogjava.net/nokiaguy/archive/2013/11/03/405944.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sun, 03 Nov 2013 10:03:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2013/11/03/405944.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/405944.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2013/11/03/405944.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/405944.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/405944.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 最近在网上看到一道Twitter的算法面试题，网上已经有人给出了答案，不过可能有些人没太看明白（我也未验证是否正确），现在给出一个比较好理解的答案。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2013/11/03/405944.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/405944.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2013-11-03 18:03 <a href="http://www.blogjava.net/nokiaguy/archive/2013/11/03/405944.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>百度面试题：求绝对值最小的数</title><link>http://www.blogjava.net/nokiaguy/archive/2013/01/30/394920.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Wed, 30 Jan 2013 03:45:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2013/01/30/394920.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/394920.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2013/01/30/394920.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/394920.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/394920.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 有一个已经排序的数组（升序），数组中可能有正数、负数或0，求数组中元素的绝对值最小的数，要求，不能用顺序比较的方法（复杂度需要小于O（n）），可以使用任何语言实现</p>
<p>例如，数组{-20，-13，-4, 6, 77,200} ，绝对值最小的是-4。</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp; 算法实现的基本思路</p>
<p>找到负数和正数的分界点，如果正好是0就是它了，如果是正数，再和左面相邻的负数绝对值比较，如果是负数，取取绝对值与右面正数比较。还要考虑数组只有正数或负数的情况。</p>
<p>我根据这个思路用Java简单实现了一个算法。<span style="color: #ff0000;">大家有更好的实现方法欢迎跟帖</span></p><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #0000FF; ">public</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">class</span><span style="color: #000000; ">&nbsp;MinAbsoluteValue<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">private</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">static</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;getMinAbsoluteValue(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]&nbsp;source)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;index&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;result&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;startIndex&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;endIndex&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;source.length&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;计算负数和正数分界点</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">(</span><span style="color: #0000FF; ">true</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span><span style="color: #000000; "></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;计算当前的索引</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;startIndex&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(endIndex&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;startIndex)&nbsp;</span><span style="color: #000000; ">/</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">2</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;source[index];</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">br</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;如果等于0，就直接返回了，0肯定是绝对值最小的</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(result</span><span style="color: #000000; ">==</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<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;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;如果值大于0，处理当前位置左侧区域，因为负数肯定在左侧</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(result&nbsp;</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<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;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(index&nbsp;</span><span style="color: #000000; ">==</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<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;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">break</span><span style="color: #000000; ">;<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;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(source[index</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]&nbsp;</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;endIndex&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;index&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(source[index</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]&nbsp;</span><span style="color: #000000; ">==</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">break</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;如果小于0，处理当前位置右侧的区域，因为正数肯定在右侧的位置</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><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;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(index&nbsp;</span><span style="color: #000000; ">==</span><span style="color: #000000; ">&nbsp;endIndex)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">break</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(source[index&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]&nbsp;</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;startIndex&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;index&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(source[index&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]&nbsp;</span><span style="color: #000000; ">==</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">break</span><span style="color: #000000; ">;<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;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;根据分界点计算绝对值最小的数</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(source[index]&nbsp;</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(index&nbsp;</span><span style="color: #000000; ">==</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">||</span><span style="color: #000000; ">&nbsp;source[index]&nbsp;</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">&nbsp;Math.abs(source[index</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;source[index];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;source[index</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(index&nbsp;</span><span style="color: #000000; ">==</span><span style="color: #000000; ">&nbsp;source.length&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">||</span><span style="color: #000000; ">&nbsp;Math.abs(source[index])&nbsp;</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">&nbsp;source[index</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; ">])<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;source[index];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;source[index</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; ">];<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;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;result;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">public</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">static</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">void</span><span style="color: #000000; ">&nbsp;main(String[]&nbsp;args)&nbsp;</span><span style="color: #0000FF; ">throws</span><span style="color: #000000; ">&nbsp;Exception<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]&nbsp;arr1&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">new</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]{</span><span style="color: #000000; ">-</span><span style="color: #000000; ">23</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">22</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">3</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">2</span><span style="color: #000000; ">,</span><span style="color: #000000; ">1</span><span style="color: #000000; ">,</span><span style="color: #000000; ">2</span><span style="color: #000000; ">,</span><span style="color: #000000; ">3</span><span style="color: #000000; ">,</span><span style="color: #000000; ">5</span><span style="color: #000000; ">,</span><span style="color: #000000; ">20</span><span style="color: #000000; ">,</span><span style="color: #000000; ">120</span><span style="color: #000000; ">};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]&nbsp;arr2&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">new</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]{</span><span style="color: #000000; ">-</span><span style="color: #000000; ">23</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">22</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">12</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">6</span><span style="color: #000000; ">,</span><span style="color: #000000; ">-</span><span style="color: #000000; ">4</span><span style="color: #000000; ">};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]&nbsp;arr3&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">new</span><span style="color: #000000; ">&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[]{</span><span style="color: #000000; ">1</span><span style="color: #000000; ">,</span><span style="color: #000000; ">22</span><span style="color: #000000; ">,</span><span style="color: #000000; ">33</span><span style="color: #000000; ">,</span><span style="color: #000000; ">55</span><span style="color: #000000; ">,</span><span style="color: #000000; ">66</span><span style="color: #000000; ">,</span><span style="color: #000000; ">333</span><span style="color: #000000; ">};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;value&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;getMinAbsoluteValue(arr1);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(value);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;getMinAbsoluteValue(arr2);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(value);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;</span><span style="color: #000000; ">=</span><span style="color: #000000; ">&nbsp;getMinAbsoluteValue(arr3);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(value);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}</span></div><img src ="http://www.blogjava.net/nokiaguy/aggbug/394920.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2013-01-30 11:45 <a href="http://www.blogjava.net/nokiaguy/archive/2013/01/30/394920.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>不使用中间变量交换两个数（Java版）</title><link>http://www.blogjava.net/nokiaguy/archive/2010/07/28/327291.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Wed, 28 Jul 2010 02:29:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2010/07/28/327291.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/327291.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2010/07/28/327291.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/327291.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/327291.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在程序中实现交换两个数的功能并不复杂，但如果不使用中间变量，就需要动一下脑筋。在本文介绍了两个方法（其实原理都是一个）。其基本原理就是数的中和。也就是说，通过某种运算（二元运算）将a和b两个数变成一个数，并保存在其中一个变量中。然后再通过同样的运算符将a或b中和掉。这样实际上是利用了a或 b本身作为了中间变量。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2010/07/28/327291.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/327291.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2010-07-28 10:29 <a href="http://www.blogjava.net/nokiaguy/archive/2010/07/28/327291.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有道难题2009复赛题解答（Java版）：求大于给定数的最小不重复数</title><link>http://www.blogjava.net/nokiaguy/archive/2010/05/11/320597.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Tue, 11 May 2010 08:23:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2010/05/11/320597.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/320597.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2010/05/11/320597.html#Feedback</comments><slash:comments>21</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/320597.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/320597.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 最近看了有道出的几个复赛题，觉得很好玩，现给出Java版的答案。先看看提干部分。如果一个数字十进制表达时，不存在连续两位数字相等，则称之为“不重复数”。例如，105，1234和12121都是“不重复数”，而11，100和 1225不算。给定一个long类型数字A，返回大于A的最小“不重复数”。 &nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2010/05/11/320597.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/320597.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2010-05-11 16:23 <a href="http://www.blogjava.net/nokiaguy/archive/2010/05/11/320597.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>生成n*n蛇形矩阵的算法</title><link>http://www.blogjava.net/nokiaguy/archive/2009/07/24/288163.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Fri, 24 Jul 2009 03:04:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/07/24/288163.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/288163.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/07/24/288163.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/288163.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/288163.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在描述算法之前，先看看下面的5*5的表格：<br><br> 1 	 3 	 4 	 10 	 11<br> 2 	 5 	 9 	 12    19<br> 6 	 8 	 13 	 18 	 20<br> 7 	 14 	 17 	 21 	 24<br> 15 	 16 	 22 	 23 	 25<br><br>    上面的表格很容易看出规律。就是从左上角第一个格开始（起始为1），然后延右上角到左下角的斜线。先从下到上，再从上到下。开始按数字递增排列。也就是说每一个斜线上分别有如下几组数字：<br><br>1    2 3     4 5 6       7 8 9 10      11 12 13 14 15          16 17 18 19      20 21 22      23 24       25&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/07/24/288163.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/288163.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-07-24 11:04 <a href="http://www.blogjava.net/nokiaguy/archive/2009/07/24/288163.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Base64编码原理与实现</title><link>http://www.blogjava.net/nokiaguy/archive/2009/05/29/278938.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Fri, 29 May 2009 11:20:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/05/29/278938.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/278938.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/05/29/278938.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/278938.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/278938.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文介绍了Base64编码的基本原理，并给出了一个简单的Base64编码的实现&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/05/29/278938.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/278938.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-05-29 19:20 <a href="http://www.blogjava.net/nokiaguy/archive/2009/05/29/278938.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>09考研数据结构试题的一种解法（Java版）</title><link>http://www.blogjava.net/nokiaguy/archive/2009/01/17/251722.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 17 Jan 2009 12:50:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/01/17/251722.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/251722.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/01/17/251722.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/251722.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/251722.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 虽然研究生已毕业，但看到有一些难度的研究生考试题还是忍不住要做做，本文给出了09年研究生入学考试的一道数据结构题的Java实现。本文给出的算法的空间复杂度为O(1)，时间复杂度为O(n)。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/01/17/251722.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/251722.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-01-17 20:50 <a href="http://www.blogjava.net/nokiaguy/archive/2009/01/17/251722.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>选择排序(selection sort)算法实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/16/200878.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Fri, 16 May 2008 05:21:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/16/200878.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/200878.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/16/200878.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/200878.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/200878.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 从字面上理解，就是通过不断地选择数组元素，从而达到排序的目的。我插入排序类似，假设第i(i<n)个数组元素data[0]是最大的(从大到小排序)，然后依次扫描i + 1 到 n - 1的元素，找到比第i个元素大的元素。最后将它们交换。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/16/200878.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/200878.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-16 13:21 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/16/200878.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>希尔排序(shellsort)算法实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/15/200734.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Thu, 15 May 2008 14:01:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/15/200734.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/200734.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/15/200734.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/200734.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/200734.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 希尔排序(shellsort)又叫增量递减(diminishing increment)排序，是由D.L. Shell发明的，这个算法是通过一个逐渐减小的增量使一个数组逐渐趋近于有序从而达到排序的目的。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/15/200734.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/200734.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-15 22:01 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/15/200734.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>快速排序(quicksort)算法实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/14/200471.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Wed, 14 May 2008 12:14:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/14/200471.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/200471.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/14/200471.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/200471.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/200471.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 快速排序(quicksort)是分治法的典型例子，它的主要思想是将一个待排序的数组以数组的某一个元素X为轴，使这个轴的左侧元素都比X大，而右侧元素都比X小(从大到小排序)。然后以这个X在变换后数组的位置i分为左右两个子数组，再分别进行快速排序，直到子数组中只有一个元素为止。<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/14/200471.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/200471.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-14 20:14 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/14/200471.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>得到第K个大的数算法研究</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/12/200083.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Mon, 12 May 2008 12:55:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/12/200083.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/200083.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/12/200083.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/200083.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/200083.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 第一种算法是最容易想到的，就是利用快速排序的思想，将一个数组分成以某一个数X为轴，左边的所有的数都比X小，而右边的数都比X大。但我快速排序不同的是，在这个算法中只考虑X的一边，而不是两边都考虑。 &nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/12/200083.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/200083.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-12 20:55 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/12/200083.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>棋盘覆盖问题的算法实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199893.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sun, 11 May 2008 14:29:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199893.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199893.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199893.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199893.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199893.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在一个2^k * 2^k个方格组成的棋盘中，有一个方格与其它的不同，若使用以下四种L型骨牌覆盖除这个特殊方格的其它方格，如何覆盖。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/11/199893.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199893.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-11 22:29 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/11/199893.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>拆半查找的递归和非递归算法</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199892.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sun, 11 May 2008 14:26:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199892.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199892.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199892.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199892.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199892.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文给出了折半查找在递归和非递归实现  &nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/11/199892.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199892.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-11 22:26 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/11/199892.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>全排列算法原理和实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199838.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sun, 11 May 2008 07:43:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199838.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199838.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199838.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199838.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199838.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 全排列是将一组数按一定顺序进行排列，如果这组数有n个，那么全排列数为n!个。现以{1, 2, 3, 4, 5}为<br>例说明如何编写全排列的递归算法。 &nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/11/199838.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199838.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-11 15:43 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/11/199838.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>整数划分算法原理与实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199837.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sun, 11 May 2008 07:41:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199837.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199837.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/11/199837.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199837.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199837.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 整数划分问题是将一个正整数n拆成一组数连加并等于n的形式，且这组数中的最大加数不大于n。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/11/199837.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199837.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-11 15:41 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/11/199837.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《程序员》第9期智慧擂台题目——高频词汇提取</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199654.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 10 May 2008 01:37:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199654.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199654.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199654.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199654.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199654.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 这次智慧擂台请大家在一个比较庞大的英文文本中找出M个数量最多的短语（由N个单词组成）。统一处理相同的文本文件，该文本只包含英文单词、空格和回行符，比较谁的程序效率最高。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/10/199654.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199654.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-10 09:37 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/10/199654.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>百度面试题的java实现</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199649.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 10 May 2008 01:23:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199649.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199649.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199649.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199649.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199649.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 有一根27厘米的细木杆，在第3厘米、7厘米、11厘米、17厘米、23厘米这五个位置上各有一只蚂蚁。木杆很细，不能同时通过一只蚂蚁。开始时，蚂蚁的头朝左还是朝右是任意的，它们只会朝前走或调头，但不会后退。当任意两只蚂蚁碰头时，两只蚂蚁会同时调头朝反方向走。假设蚂蚁们每秒钟可以走一厘米的距离。编写程序，求所有蚂蚁都离开木杆的最小时间和最大时间。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/10/199649.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199649.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-10 09:23 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/10/199649.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一著名软件公司的java笔试算法题的答案</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199647.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 10 May 2008 01:19:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199647.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199647.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/10/199647.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199647.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199647.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 原题如下：用1、2、2、3、4、5这六个数字，用java写一个程序，打印出所有不同的排列，如：512234、412345等，要求："4"不能在第三位，"3"与"5"不能相连。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/10/199647.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199647.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-10 09:19 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/10/199647.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>