﻿<?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-海大哥</title><link>http://www.blogjava.net/shy/</link><description>别谈技术，伤钱</description><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 06:01:41 GMT</lastBuildDate><pubDate>Sun, 12 Apr 2026 06:01:41 GMT</pubDate><ttl>60</ttl><item><title>U的概念</title><link>http://www.blogjava.net/shy/archive/2010/04/20/318850.html</link><dc:creator>海大哥</dc:creator><author>海大哥</author><pubDate>Tue, 20 Apr 2010 06:47:00 GMT</pubDate><guid>http://www.blogjava.net/shy/archive/2010/04/20/318850.html</guid><wfw:comment>http://www.blogjava.net/shy/comments/318850.html</wfw:comment><comments>http://www.blogjava.net/shy/archive/2010/04/20/318850.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shy/comments/commentRss/318850.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shy/services/trackbacks/318850.html</trackback:ping><description><![CDATA[大家或许会在公司听到服务器是几个U的，让我来解释一下吧。机柜由一个标准的尺寸定义，以便于衡量一个服务器或者其他网路设备占用机柜空间的大小，于是就产生了U的概念。有时候经常说这个服务器是几个U的，其实就是在说这个太服务器的厚度，1U=1.75英寸，就是4.445厘米了。<img src="/CuteSoft_Client/CuteEditor/images/emwink.gif" align="absMiddle" border="0"  alt="" />
<img src ="http://www.blogjava.net/shy/aggbug/318850.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shy/" target="_blank">海大哥</a> 2010-04-20 14:47 <a href="http://www.blogjava.net/shy/archive/2010/04/20/318850.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Google可以这么用，来看看！</title><link>http://www.blogjava.net/shy/archive/2010/04/19/318721.html</link><dc:creator>海大哥</dc:creator><author>海大哥</author><pubDate>Mon, 19 Apr 2010 04:32:00 GMT</pubDate><guid>http://www.blogjava.net/shy/archive/2010/04/19/318721.html</guid><wfw:comment>http://www.blogjava.net/shy/comments/318721.html</wfw:comment><comments>http://www.blogjava.net/shy/archive/2010/04/19/318721.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shy/comments/commentRss/318721.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shy/services/trackbacks/318721.html</trackback:ping><description><![CDATA[<p>1.如果只想在每个网页的标题中搜索内容，可以用intitle关键字来辅助查询。<br />
比如：输入intitle:java 这样标题中带有java关键字的就会被搜索出来。<br />
2.在特定的网站中搜索关键则：site<br />
如果只想在摸个特定的网站中搜索信息，可以用斯特这个关键字。<br />
例如，想在<a href="http://www.sohu.com">www.sohu.com</a>中搜索&#8220;新闻&#8221;就可以这样<br />
如：新闻 site:www.sohu.com<br />
3.在url链接中搜索关键字：inurl<br />
如果想在url链接中搜索信息，那么可以利用inurl<br />
例如，想把所有的url链接中有java的站点搜索出来，就可以这样<br />
如：inurl:java</p>
<img src ="http://www.blogjava.net/shy/aggbug/318721.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shy/" target="_blank">海大哥</a> 2010-04-19 12:32 <a href="http://www.blogjava.net/shy/archive/2010/04/19/318721.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>什么是工作经验？</title><link>http://www.blogjava.net/shy/archive/2010/04/15/318385.html</link><dc:creator>海大哥</dc:creator><author>海大哥</author><pubDate>Thu, 15 Apr 2010 02:23:00 GMT</pubDate><guid>http://www.blogjava.net/shy/archive/2010/04/15/318385.html</guid><wfw:comment>http://www.blogjava.net/shy/comments/318385.html</wfw:comment><comments>http://www.blogjava.net/shy/archive/2010/04/15/318385.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shy/comments/commentRss/318385.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shy/services/trackbacks/318385.html</trackback:ping><description><![CDATA[现在的工作几乎招聘信息上都需要的是工作经验，那什么是工作经验我个人理解所谓的工作经验就是&#8220;应聘职位所必须的技术和能力&#8221;，那这个技术和能力是的是什么呢？<br />
1.首先来说说&#8220;技术&#8221;<br />
经常会在简历上看到这样的：<br />
主要擅长于计算机的维护，应用及开发。<br />
主要书序IDE环境：VC++、C++ Builder、VB；<br />
主要使用的数据库接口：ADO；<br />
主要使用的数据源：Access、SQL Server、擅长使用SQL语言；<br />
主要使用的图形接口：OpenGL、对DirectX接口也有一定的了解；<br />
其他语言：JAVA（J2EE、J2ME）；<br />
网络方面：书序JSP、ASP、PHP以及网络架构设计、施工、调试、对安全知识也有相当的了解；<br />
系统维护方面：有3年的计算机维护经验，书序系统工作原理；<br />
这个简历技术真的是很全面，生怕用人单位不给他面试机会。结果就是很少有公司有找他面试，因为公司都不知道你到底要做什么，能做什么，技术并不是学的多而要精。<br />
2.在说说&#8220;必备能力&#8221;<br />
说到能力，很多的应届毕业省会说&#8220;我的学习能力很强，具有良好的学习意识&#8221;，有的面试的人就会说&#8220;这个我不会，但是我可以学而且很快就能上手&#8217;仔细想想如果你是老板你会怎么想，你到这里的目的是学习那样的话你就要给公司学费，而不是公司给你工资了。一个公司找一个人是要他来创造价值的，而不是让你自我提高和学习的。<br />
<br />
总结工作经验就是：具备职位所需要的技术精度和深度，最好是对那个技术非常精熟，具有为公司服务的意思，有为公司创造价值的能力，至少有为公司节约成本的能力。
<img src ="http://www.blogjava.net/shy/aggbug/318385.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shy/" target="_blank">海大哥</a> 2010-04-15 10:23 <a href="http://www.blogjava.net/shy/archive/2010/04/15/318385.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>那年江湖两相望----准备离职----新的开始</title><link>http://www.blogjava.net/shy/articles/318113.html</link><dc:creator>海大哥</dc:creator><author>海大哥</author><pubDate>Tue, 13 Apr 2010 01:31:00 GMT</pubDate><guid>http://www.blogjava.net/shy/articles/318113.html</guid><wfw:comment>http://www.blogjava.net/shy/comments/318113.html</wfw:comment><comments>http://www.blogjava.net/shy/articles/318113.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shy/comments/commentRss/318113.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shy/services/trackbacks/318113.html</trackback:ping><description><![CDATA[JE上第一次发帖子，带着些许伤感的心情，感慨生活变了，世界变了，人也变了。中午的时候就在那里发呆看着留下过往的人是那样的渺小，就像站在山顶和站在山脚的两个人，虽然位置不同，但在对方眼里，同样的渺小！我们看着富人的生活纸醉金迷，我们的生活简简单单，我长和朋友说其实富人有富人的活法穷人有穷人的快乐。但面对现在的生活的人似乎已经失去了那份最原始的纯真，一下子就想起了在老家农村的姥姥和老爷他们的一天就是叼着眼袋挨家挨户的溜达，那里没有大城市的喧嚣，没有所谓的压力&#8230;&#8230;&#8230;&#8230;什么都没有，有的就是安详和真正的快乐，有的就是那种满足的笑容。不管生活怎样我希望有梦想的人们不要放弃。我们有拥有快乐的权利。
<p>&nbsp; &#8220;为什么要走的，在这里不是干的不是很好吗？&#8230;&#8230;&#8230;&#8230;别瞎想回去考虑一下，有什么问题给老大说。&#8221;和老板提出要离开这里了，我能有什么问题，因为我赚的钱不能养活自己了就这么一个问题，我年前提了但老板没有答应，我想他还是看我太年轻吧挑不起什么大事，但他从来没有看过公司每个人的努力，而关心的就是每个人的不足。做老板的应该懂得什么叫做共赢，一个项目并不是一个优秀的人才就能做的，应该找一个合适的人，一个合适的人放在了合适的位置那这一切看起来似乎都是那么的自然&nbsp;。但现在不管怎么样我都选择了离开。</p>
<p>&nbsp; 朋友们，有选择就会有放弃，勇敢的去做吧！踏平这个江湖，带着属于自己的武器去江湖走走！</p>
<p>&nbsp;</p>
<p>&nbsp; </p>
<p>&nbsp; 那年江湖两相望，忘穿江水愁断肠。</p>
<img src ="http://www.blogjava.net/shy/aggbug/318113.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shy/" target="_blank">海大哥</a> 2010-04-13 09:31 <a href="http://www.blogjava.net/shy/articles/318113.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>从海量数据中找出中位数 </title><link>http://www.blogjava.net/shy/articles/318109.html</link><dc:creator>海大哥</dc:creator><author>海大哥</author><pubDate>Tue, 13 Apr 2010 01:22:00 GMT</pubDate><guid>http://www.blogjava.net/shy/articles/318109.html</guid><wfw:comment>http://www.blogjava.net/shy/comments/318109.html</wfw:comment><comments>http://www.blogjava.net/shy/articles/318109.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/shy/comments/commentRss/318109.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/shy/services/trackbacks/318109.html</trackback:ping><description><![CDATA[<p style="font-size: 10pt; font-family: 宋体">题目：在一个文件中有 10G 个整数，乱序排列，要求找出中位数。内存限制为 2G。只写出思路即可（内存限制为 2G的意思就是，可以使用2G的空间来运行程序，而不考虑这台机器上的其他软件的占用内存）。</p>
<p style="font-size: 10pt; font-family: 宋体">关于中位数：数据排序后，位置在最中间的数值。即将数据分成两部分，一部分大于该数值，一部分小于该数值。中位数的位置：当样本数为奇数时，中位数=(N+1)/2 ; 当样本数为偶数时，中位数为N/2与1+N/2的均值（那么10G个数的中位数，就第5G大的数与第5G+1大的数的均值了）。</p>
<p style="font-size: 10pt; font-family: 宋体">分析：明显是一道工程性很强的题目，和一般的查找中位数的题目有几点不同。<br />
1. 原数据不能读进内存，不然可以用快速选择，如果数的范围合适的话还可以考虑桶排序或者计数排序，但这里假设是32位整数，仍有4G种取值，需要一个16G大小的数组来计数。</p>
<p style="font-size: 10pt; font-family: 宋体">2. 若看成从N个数中找出第K大的数，如果K个数可以读进内存，可以利用最小或最大堆，但这里K=N/2,有5G个数，仍然不能读进内存。</p>
<p style="font-size: 10pt; font-family: 宋体">3. 接上，对于N个数和K个数都不能一次读进内存的情况，《编程之美》里给出一个方案：设k&lt;K,且k个数可以完全读进内存，那么先构建k个数的堆，先找出第0到k大的数，再扫描一遍数组找出第k+1到2k的数，再扫描直到找出第K个数。虽然每次时间大约是nlog(k)，但需要扫描ceil(K/k) 次，这里要扫描5次。</p>
<p style="font-size: 10pt; font-family: 宋体">解法：首先假设是32位无符号整数。<br />
1. 读一遍10G个整数，把整数映射到256M个区段中，用一个64位无符号整数给每个相应区段记数。<br />
说明：整数范围是0 - 2^32 - 1，一共有4G种取值，映射到256M个区段，则每个区段有16（4G/256M = 16）种值，每16个值算一段， 0～15是第1段，16～31是第2段，&#8230;&#8230;2^32-16 ～2^32-1是第256M段。一个64位无符号整数最大值是0～8G-1，这里先不考虑溢出的情况。总共占用内存256M&#215;8B=2GB。</p>
<p style="font-size: 10pt; font-family: 宋体">2. 从前到后对每一段的计数累加，当累加的和超过5G时停止，找出这个区段（即累加停止时达到的区段，也是中位数所在的区段）的数值范围，设为[a，a+15]，同时记录累加到前一个区段的总数，设为m。然后，释放除这个区段占用的内存。</p>
<p style="font-size: 10pt; font-family: 宋体">3. 再读一遍10G个整数，把在[a，a+15]内的每个值计数，即有16个计数。</p>
<p style="font-size: 10pt; font-family: 宋体">4. 对新的计数依次累加，每次的和设为n，当m+n的值超过5G时停止，此时的这个计数所对应的数就是中位数。</p>
<p style="font-size: 10pt; font-family: 宋体">总结：<br />
1.以上方法只要读两遍整数，对每个整数也只是常数时间的操作，总体来说是线性时间。</p>
<p style="font-size: 10pt; font-family: 宋体">2. 考虑其他情况。<br />
若是有符号的整数，只需改变映射即可。若是64为整数，则增加每个区段的范围，那么在第二次读数时，要考虑更多的计数。若过某个计数溢出，那么可认定所在的区段或代表整数为所求，这里只需做好相应的处理。噢，忘了还要找第5G+1大的数了，相信有了以上的成果，找到这个数也不难了吧。</p>
<p style="font-size: 10pt; font-family: 宋体">3. 时空权衡。<br />
花费256个区段也许只是恰好配合2GB的内存（其实也不是，呵呵）。可以增大区段范围，减少区段数目，节省一些内存，虽然增加第二部分的对单个数值的计数，但第一部分对每个区段的计数加快了（总体改变？？待测）。</p>
<p>4. 映射时尽量用位操作，由于每个区段的起点都是2的整数幂，映射起来也很方便。</p>
<p>&nbsp;</p>
<p><strong><font color="#000099">原文地址</font></strong> <a href="http://www.cppblog.com/richbirdandy/" target="_blank">http://www.cppblog.com/richbirdandy/</a> </p>
<img src ="http://www.blogjava.net/shy/aggbug/318109.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/shy/" target="_blank">海大哥</a> 2010-04-13 09:22 <a href="http://www.blogjava.net/shy/articles/318109.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>