??xml version="1.0" encoding="utf-8" standalone="yes"?>999久久久国产精品,久久精品成人,亚洲欧美国产日韩综合久久http://www.shnenglu.com/humanchao/知识改变命运Q学习成未来?/description>zh-cnTue, 06 May 2025 22:14:05 GMTTue, 06 May 2025 22:14:05 GMT60LeetCode ?Median of Two Sorted Arrays - findMedianSortedArrayshttp://www.shnenglu.com/humanchao/archive/2018/06/26/215747.html胡满?/dc:creator>胡满?/author>Tue, 26 Jun 2018 05:57:00 GMThttp://www.shnenglu.com/humanchao/archive/2018/06/26/215747.htmlhttp://www.shnenglu.com/humanchao/comments/215747.htmlhttp://www.shnenglu.com/humanchao/archive/2018/06/26/215747.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/215747.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/215747.htmlThere are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).

The following code is better than most of the results returned by baidu or google. Time complexity is O((m+n)/2), Space complexity is O(1).

 1 double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) 
 2 {
 3     int nums1_i = 0, nums2_i = 0; 
 4     int mid1 = 0, mid2 = 0, count = 0;
 5     while (nums1_i < nums1.size() && nums2_i < nums2.size()) 
 6     {
 7         if (count++ > ((nums1.size() + nums2.size()) / 2))    break;
 8         mid1 = mid2;
 9         mid2 = (nums1[nums1_i] < nums2[nums2_i] ? nums1[nums1_i++] : nums2[nums2_i++]);
10     }  
11 
12     while (nums1_i < nums1.size()) 
13     {  
14         if (count++ > ((nums1.size() + nums2.size()) / 2))    break;
15         mid1 = mid2;
16         mid2 = nums1[nums1_i++];
17     }  
18 
19     while (nums2_i < nums2.size()) 
20     {  
21         if (count++ > ((nums1.size() + nums2.size()) / 2))    break;
22         mid1 = mid2;
23         mid2 = nums2[nums2_i++];
24     }  
25 
26     return (nums1.size() + nums2.size()) % 2 == 0 
27         ? (mid1 + mid2) / 2.0
28         : mid2; 
29 }


]]>
深入出LSHhttp://www.shnenglu.com/humanchao/archive/2018/02/24/215521.html胡满?/dc:creator>胡满?/author>Sat, 24 Feb 2018 05:10:00 GMThttp://www.shnenglu.com/humanchao/archive/2018/02/24/215521.htmlhttp://www.shnenglu.com/humanchao/comments/215521.htmlhttp://www.shnenglu.com/humanchao/archive/2018/02/24/215521.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/215521.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/215521.html阅读全文

]]>
LSH Locality-Sensitive Hashing 局部敏感哈希算法ȝhttp://www.shnenglu.com/humanchao/archive/2017/05/24/214952.html胡满?/dc:creator>胡满?/author>Wed, 24 May 2017 01:16:00 GMThttp://www.shnenglu.com/humanchao/archive/2017/05/24/214952.htmlhttp://www.shnenglu.com/humanchao/comments/214952.htmlhttp://www.shnenglu.com/humanchao/archive/2017/05/24/214952.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/214952.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/214952.html

脑图源文件下载地址
http://www.shnenglu.com/Files/humanchao/LSH(Locality%20Sensitive%20Hashing).zip

参考文献:

Website:

[1] http://people.csail.mit.edu/indyk/ QLSH原作者)

[2] http://www.mit.edu/~andoni/LSH/ (E2LSH)


Paper:

[1] Approximate nearest neighbor: towards removing the curse of dimensionality

[2] Similarity search in high dimensions via hashing

[3] Locality-sensitive hashing scheme based on p-stable distributions 

[4] MultiProbe LSH Efficient Indexing for HighDimensional Similarity Search

[5] Near-Optimal Hashing Algorithms for Approximate Nearest Neighbor in High Dimensions

Tutorial:

[1] Locality-Sensitive Hashing for Finding Nearest Neighbors

[2] Approximate Proximity Problems in High Dimensions via Locality-Sensitive Hashing

[3] Similarity Search in High Dimensions


Book:

[1] Mining of Massive Datasets
[2] Nearest Neighbor Methods in Learning and Vision: Theory and Practice


Cdoe:

[1] http://sourceforge.net/projects/lshkit/?source=directory

[2] http://tarsos.0110.be/releases/TarsosLSH/TarsosLSH-0.5/TarsosLSH-0.5-Readme.html 

[3] http://www.cse.ohio-state.edu/~kulis/klsh/klsh.htm 

[4] http://code.google.com/p/likelike/ 

[5] https://github.com/yahoo/Optimal-LSH

[6] OpenCV LSHQ分别位于legacy module和flann module中)






]]>
R语言预测实战源代?Predictive Practice With R source codehttp://www.shnenglu.com/humanchao/archive/2017/01/17/214604.html胡满?/dc:creator>胡满?/author>Tue, 17 Jan 2017 01:52:00 GMThttp://www.shnenglu.com/humanchao/archive/2017/01/17/214604.htmlhttp://www.shnenglu.com/humanchao/comments/214604.htmlhttp://www.shnenglu.com/humanchao/archive/2017/01/17/214604.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/214604.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/214604.html

https://gith
ub.com/cador/Predictive-Practice-With-R


]]>
E序员如何{型做大数?/title><link>http://www.shnenglu.com/humanchao/archive/2016/07/14/213942.html</link><dc:creator>胡满?/dc:creator><author>胡满?/author><pubDate>Thu, 14 Jul 2016 05:24:00 GMT</pubDate><guid>http://www.shnenglu.com/humanchao/archive/2016/07/14/213942.html</guid><wfw:comment>http://www.shnenglu.com/humanchao/comments/213942.html</wfw:comment><comments>http://www.shnenglu.com/humanchao/archive/2016/07/14/213942.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/humanchao/comments/commentRss/213942.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/humanchao/services/trackbacks/213942.html</trackback:ping><description><![CDATA[<p><span style="font-family: 宋体; font-size: 14pt;">惌{型的都是那些不甘于现状的Q我是其中之一?/span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">我是</span><span style="font-size: 14pt;">2005</span><span style="font-family: 宋体; font-size: 14pt;">q毕业,从毕业前的实习开始,?/span><span style="font-size: 14pt;">CAD</span><span style="font-family: 宋体; font-size: 14pt;">二次开发,甉|设计软g?/span></p> <p><span style="font-size: 14pt;">2006</span><span style="font-family: 宋体; font-size: 14pt;">q{做无U办公YӞ那个q代无纸办公行Q?/span><span style="font-size: 14pt;">C++</span><span style="font-family: 宋体; font-size: 14pt;">更是LQ感觉也有前途?/span></p> <p><span style="font-size: 14pt;">2008</span><span style="font-family: 宋体; font-size: 14pt;">q{?/span><span style="font-size: 14pt;">Open Office</span><span style="font-family: 宋体; font-size: 14pt;">的开发,l护世界U的产品会生一U自豪感Q?/span><span style="font-size: 14pt;">Open Office</span><span style="font-family: 宋体; font-size: 14pt;">本n代码体量也的非常大?/span></p> <p><span style="font-size: 14pt;">2010</span><span style="font-family: 宋体; font-size: 14pt;">q{做安全类的品,从一个模块负责人,核心E序员,到架构师Q再到负责整体品线的负责hQ经历了</span><span style="font-size: 14pt;">4</span><span style="font-family: 宋体; font-size: 14pt;">q时间?/span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">在我的职业生涯中时不时就会生一U莫名的危机感,l常会问自己Q自己掌握的技术够深吗、是L的技术吗、未来的职业发展又在哪里Q?/span></p> <p> </p> <p><span style="font-size: 14pt;">2006</span><span style="font-family: 宋体; font-size: 14pt;">q一个同事蟩槽去了一家大型企业,走的时候跟我们_做二ơ开发没有前途,出去面试会被人看不v。但是我发现Q在具体~码的过E中Q很多经验丰富的E序员甚至不能把一个对话框E序写的很漂亮,一个对话框cȝ实现界面与逻辑混在一P没有太多解耦的思想在里面。后来的工作中悟Z个道理,没有角Ԍ只有演员,只有把现在的事情做好Q才能有未来?/span></p> <p> </p> <p><span style="font-size: 14pt;">2008</span><span style="font-family: 宋体; font-size: 14pt;">q我在一个不满意的环境中Q苦苦的L下一步的方向Q从坐落在小区里的公怸直面试到了微软和</span><span style="font-size: 14pt;">IBM</span><span style="font-family: 宋体; font-size: 14pt;">q个U别的公叔R。被挫了很多ơ,也积累了很多面试的经验。其间有一家做搜烦引擎的公司我没去成,我的理由只是因ؓ工资没有M提高。其实大家蟩槽的时候都说是Z职业发展Q结果往往是哪里给的条件好去哪里Q而在一般意义上看,高工资与好公怸般都是成正比的。当然偶也有例外,比如q里提到的做搜烦的公司,如果当初?/span><span style="font-size: 14pt;">08</span><span style="font-family: 宋体; font-size: 14pt;">的时候就选择做搜索引擎,也许后面的故事会很不同?/span></p> <p> </p> <p><span style="font-size: 14pt;">2010</span><span style="font-family: 宋体; font-size: 14pt;">q我拥有了工?/span><span style="font-size: 14pt;">5</span><span style="font-family: 宋体; font-size: 14pt;">q的工作l验Q我发现一般工作到</span><span style="font-size: 14pt;">5</span><span style="font-family: 宋体; font-size: 14pt;">q以后才会遇C些真正的好机会。蟩槽去了一家刚刚在创业板上市不久的公司Q做一些安全类的品。从q一d始,׃业务的快速发展和领导的信任,我开始拥有了一些能够独当一面的能力与锻炼机会。除了编写一些从无到有的模块Q我开始关注架构的设计Q团队培养,产品理{一pd更宏观的问题?/span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">回到原来的问题,我们Z么要转型Q原因ȝ如下Q?/span></p> <p> </p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">1.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">大多数的E序员职业v炚w偏低Q很多h甚至只能从外包做P</span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">2.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">大多数的E序员做不上L产品Q主技术,所掌握的都是一些较后的技能,靠体力挣钱,而不是靠智力Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">3.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">很多公司不能l员工稳定的成长预期Q过了某一个发展阶D双方很难找到共赢点Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">4.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">世界发展太快Q当我们q在應|之时外面世界已经l历了从互联|,云计,Ud互联|,大数据,人工Q一波又一波的产业升。而我们一波都没赶上?/span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">于是我们要{型?/span><span style="font-size: 14pt;">2011</span><span style="font-family: 宋体; font-size: 14pt;">q当我看?/span><span style="font-size: 14pt;">hadoop</span><span style="font-family: 宋体; font-size: 14pt;">权威指南q本书的时候,我感觉大数据一起会行hQ而且大数据未来会在各行各业遍地开花?/span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">可是Q留l学习的旉真的很少Q工作忙,下班要顾家。只好挤旉学习Q在上班的\上,坐公交R、坐地铁Q给孩z衣服,可以带着x听视频,成了唯一的学习方式。听视频虽然不能学到太多技术精髓,但也可以了解不少技术,开阔眼界?/span></p> <p> </p> <p><span style="font-size: 14pt;">2014</span><span style="font-family: 宋体; font-size: 14pt;">q底Q我转型做一些也数据相关的工作,做数据清z,分析Q徏模,ȝ。我ȝ一下{型要做的一些事情以及要学的东西?/span></p> <p> </p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">1.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">要有行动Q只停留在想法层面生不了Q何实质上的进展;</span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">2.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">挤时_旉对于每一个认真生zȝ人都很宝贵,挤一下吧Q少玩玩游戏啥的QM有的Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">3.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">要重视学习,其是看书进行系l学习,从网l上看到的只a片语做ؓ了解q行Q但是不ȝl掌握知识,境界很难上到新的台阶Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">4.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">要注视理论学习,上班以后最不缺的是实践Q天天都在实践反而凸昄学习理论的重要性;</span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">5.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">把主要学习时间花在那些最通用、最被广泛采用的技术上Q如果每天都在学习那些其他公司所不需要的领域知识Ӟ说明该蟩槽了Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">6.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">要注重基本的数据l构和算法,q些是写好程序的基础Q基军_高度Q做那些能够解决困难问题的hQ而不是做只能执行具体d的h。差别在于能不能把现实的工程问题抽象成数据与法?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">7.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">选一个好的方向,像高q发Q分布式pȝQ数据库Q大数据工具Q统计徏模,机器学习Q数据挖掘都是即有用又缺人的领域Q搞好Q何一个领域都会有好的发展Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">8.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">我感觉能把数据分析、机器学习、自然语a处理?/span><span style="font-size: 14pt;">R</span><span style="font-family: 宋体; font-size: 14pt;">语言q些学好Q统计徏模依然是很基知识Q不能蟩跃学习;</span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">9.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-family: 宋体; font-size: 14pt;">学习最重要的是入门与坚持,入门可以学视频教E,_深要靠应用与时间打;</span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">q序员的职业发展来看,我ȝ自己的一些经验:</span></p> <p> </p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">1.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-size: 14pt;">1~3</span><span style="font-family: 宋体; font-size: 14pt;">q_要学_一门语aQ这q不太难Q?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">2.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-size: 14pt;">3~5</span><span style="font-family: 宋体; font-size: 14pt;">q_应该x软g的设计,设计模式{知?/span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">3.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-size: 14pt;">5~7</span><span style="font-family: 宋体; font-size: 14pt;">q_应该能独立完成一个Y件模块,从需求到试的全q程。我发现一般这个阶D会遇到一些获得期权或者股权的ZQ能不能最lŞ成收益看q气吧;</span></p> <p style="margin-left:18.0pt;text-indent:-18.0pt;"><span style="font-size: 14pt;">4.</span><span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       </span><span style="font-size: 14pt;">7~10</span><span style="font-family: 宋体; font-size: 14pt;">q_争取可以负责更ؓ全面的工?/span></p> <p style="margin-left:18.0pt;text-indent:0cm;"> </p> <p><span style="font-family: 宋体; font-size: 14pt;">在这个过E中Q像数据库,操作pȝQƈ发,多线E,目理Q品管理这些知识都需要,掌握的越多越好吧?/span></p> <p> </p> <p><span style="font-family: 宋体; font-size: 14pt;">开发一个数据品跟一个传lY件品ƈ没有太大的本质差异,很多技能从事哪个行业都是需要的?/span></p> <p> </p><img src ="http://www.shnenglu.com/humanchao/aggbug/213942.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/humanchao/" target="_blank">胡满?/a> 2016-07-14 13:24 <a href="http://www.shnenglu.com/humanchao/archive/2016/07/14/213942.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>实战java高ƈ发程序设?源代?source codehttp://www.shnenglu.com/humanchao/archive/2016/05/25/213583.html胡满?/dc:creator>胡满?/author>Wed, 25 May 2016 04:04:00 GMThttp://www.shnenglu.com/humanchao/archive/2016/05/25/213583.htmlhttp://www.shnenglu.com/humanchao/comments/213583.htmlhttp://www.shnenglu.com/humanchao/archive/2016/05/25/213583.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/213583.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/213583.html下蝲链接

]]>
spark机器学习 源代?Machine Learning With Spark source codehttp://www.shnenglu.com/humanchao/archive/2016/01/13/212647.html胡满?/dc:creator>胡满?/author>Wed, 13 Jan 2016 03:08:00 GMThttp://www.shnenglu.com/humanchao/archive/2016/01/13/212647.htmlhttp://www.shnenglu.com/humanchao/comments/212647.htmlhttp://www.shnenglu.com/humanchao/archive/2016/01/13/212647.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/212647.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/212647.html
https://www.packtpub.com/books/content/support/17400

本地下蝲


]]>
机器学习法原理与编E实?代码下蝲地址http://www.shnenglu.com/humanchao/archive/2015/12/02/212388.html胡满?/dc:creator>胡满?/author>Wed, 02 Dec 2015 01:11:00 GMThttp://www.shnenglu.com/humanchao/archive/2015/12/02/212388.htmlhttp://www.shnenglu.com/humanchao/comments/212388.htmlhttp://www.shnenglu.com/humanchao/archive/2015/12/02/212388.html#Feedback1http://www.shnenglu.com/humanchao/comments/commentRss/212388.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/212388.html下蝲地址

]]>
? 国标一U和国标二汉字http://www.shnenglu.com/humanchao/archive/2015/02/25/209857.html胡满?/dc:creator>胡满?/author>Wed, 25 Feb 2015 03:16:00 GMThttp://www.shnenglu.com/humanchao/archive/2015/02/25/209857.htmlhttp://www.shnenglu.com/humanchao/comments/209857.htmlhttp://www.shnenglu.com/humanchao/archive/2015/02/25/209857.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/209857.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/209857.html一U国标汉字(3755个)

啊阿埃挨哎唉哀皑癌蔼矮艄爱隘鞍}安俺按暗岸胺案肮昂盎Ҏ熬翱袄傲奥懊澌捌扒叭吧W八疤巴拔跋靶把耙坝霸Ş爸白柏百摆䘪败拜E斑班搬扌颁板版扮拌伴瓣半办绊邦帮梆榜膀l棒蚌镑傍谤苞胞包褒剥薄雹保堡饱宝抱报暴v鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩h甭܇y迸逼E比鄙W彼蓖蔽毕毙毖币庇痚w敝弊必辟壁臂遉K鞭边~贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌Ȓ滨宾摈兵冰柄丙U饼炳病q玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜埠不布步K怖擦猜裁材才财睬t采彩菜蔡餐参蚕D惭惨灿苍舱仓藏操p槽曹草厕策侧册层y插叉茬茶查搽察岔差诧拆柴豺搀馋谗~铲产阐颤昌猖场常长偿肠厂敞畅唱倡超抄钞朝嘲潮l늂车扯撤掣L郴臣辰尘晨忱沉陈衬撑称城橙成呈乘程惩澄诚承逞骋U吃痴持匙池q弛驰耻侈尺赤翅斥炽充冲虫崇宠抽酬畴t稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚础储矗搐触处揣川穿椽传船喘串疮H幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳l疵茨磁雌辞慈瓷词此ơ聪葱囱匆从丛凑_醋促y篡H摧崔催脆瘁_Ҏ村存寸撮搓措挫错搭达{瘩打大呆歹傣戴带殆代贷袋待逮怠耽担丹单郸掸胆旦氮但惮E诞弹蛋当挡党荡档刀捣蹈倒岛导到稻悼道盗d得的y灯ȝ瞪凳邓堤低滴q敌W狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀D碉叼雕凋刁掉吊钓调跌爹蝶q谍叠丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻z兜抖斗陡豆逗痘都督毒犊独读늝赌杜镀肚度渡妒端短L断缎堆兑队对墩吨y敦囤钝盾遁掇哆多夺垛w朵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耛_饉|二贰发罚{伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊x肪房防妨仿访U放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汄奋䆾忿愤_丰枫蜂峰锋风疯烽逢冯~讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服Q涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该Ҏ钙盖溉干甘杆柑竿肝赶感秆敢冈刚钢肛纲岗港杠篙皋高膏羔p搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各l根跟耕更庚羹埂耿梗工攻功恭龚供w公宫弓巩汞pA共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谯故顾固雇刮瓜剐寡挂褂乖拐怪棺兛_冠观馆|惯灌诏光广逛瑰规圭归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈骸孩v氦亥害骇酣憨邯韩含涵寒函喊罕撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号呵喝荷菏核֒何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘U喉侯猴吼厚候后g忽瑚壶葫胡蝴狐糊湖弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏Ƣ环桓还~换患唤痪豢焕涣宦荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦較U会烩汇讌l荤昏婚浑淯zM火获或惑霍货击圑֟机畸E积肌饥迹Ȁ讥鸡姬W~吉极棘辑籍集及急疾汲即嫉挤几脊己蓟技冀季伎剂悸济寄寂计记既忌际妓l纪嘉枷夹佳家加荚颊贄钑ցEgh枉嫁歼监坚笺间煎D艰奸~茧柬碱h捡简俭剪减荐槛鉴践贱见键g健舰剑饯渐溅涧徏僵姜浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊骄娇嚼搅铰矫o脚狡角饺~绞剿教酵较叫H揭接皆U街阶截劫节桔杰L竭洁l解姐戒藉芥界借介疥诫届巾{斤金今z襟紧锦仅}q靳晋禁q烬尽劲荆兢茎睛晶怺惊精_经井警景颈静境敬镜径痉靖竟竞净炯窘揪究U玖韭久怹酒厩救旧D咎就疚鞠拘狙疽居驹菊局咀矩D沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷L撅攫抉掘倔爵觉决诀l均菌钧军君M竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看hp扛抗亢炕考拷烤靠坯柯棵颗U壳咛_渴克d课肯啃垦恛_吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块{侩快宽Ƒ֌{狂框矿眶旷况亏盔岿H葵奎魁傀馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗捞劳牢老{姥酪烙涝勒乐雷镭蕄累儡垒擂肋类泪棱楞冷厘梨犁黎qL理李里鲤CD荔吏栗丽厉励砑֎利傈例俐痢立_沥隶力璃哩俩联莲连镰廉怜涟帘敛脔R恋炼l粮凉梁_p两辆量晾亮谅撩聊僚疗燎寥辽R了撂镣廖料列裂烈劣猎x霖临邻鳞淋凛赁吝拎玲菱雉铃伉凌灵陵岭领另o溜琉榴硫馏留刘瘤柳六龙聋咙W窿隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓露路赂鹿潞录陆戮驴吕铝G旅屡缕虑氯律率滤绿峦挛孪卵ؕ掠略抡轮伦仑沦纶螺罗逻锣骡裸落z骆l妈ȝ码蚂马骂嘛吗埋买麦卖q脉瞒馒蛮满蔓曼慢O谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌怹玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡p迷谜Ic秘觅泌蜜密q棉眠冕免勉娩~面苗描瞄藐Uؓ庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸摹蘑模膜摩抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮q募慕木目睦牧穆拿哪呐钠那娜Ux乃奶耐奈南男隑֛挠脑恼闹淖呢馁内嫩能妮霓倪惔拟你匿腻逆h蔫拈q碾撉|念娘酉K捏聂孽啮镊镍涅您柠狞凝宁拧泞牛扭钮U脓农弄奴努怒女暖虐疟挪懦糯诺哦Ƨ鸥D藕呕偶沤啪爬帕怕琶拍排牌徘湃派攀潘盘盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛L砰抨Ҏ彭蓬硼朋鹏捧碰坯砒Ҏ披劈琉|啤脾疲皮匹痞d譬篇偏片骗飘漂瓢撇瞥拼频品聘乒坪苹萍q_瓶评屏坡泼颇婆破迫_剖扑铺仆莆葡菩蒲埔朴圃普谱曝瀑期ƺ栖戚妻七凄漆柒沏其奇歧畦崎脐齐旗祁骑v岂乞企启契砌器气q弃汽泣讫掐恰洽牉|钎铅千迁{仟谦乾黔钱钛_潜遣谴堑嵌Ơ歉枪呛腔羌墙蔷强抢锹敲悄桥瞧乔L巧鞘撬翘峭俏H切茄且怯窃钦R亲秦琴勤Ҏ寝沁青L們֍清擎晴氰情顷请庆琼穷U丘q求囚酋泅区蛆曲w屈驱渠取娶龋趣d颧权醛泉全痊拳犬券劝~炔瘸却鹊榷雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧Q认刃妊n扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如ix入褥软阮蕊瑞锐闰润若弱撒z萨腮鳃塞赛三叁伞散桑嗓丧搔骚扫嫂瑟色ӆ僧莎砂杀ҎU傻啥煞{晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上裳梢捎E烧芍勺韶少哨邵l奢赊蛇舌舍赦摄慑涉社讄甛_伸n深娠l神沈审婶甚肾慎渗声生甥牲升l省盛剩胜圣师失狮施湿诗虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳D抒输叔舒淑疏书赎孰熟薯暑曙|蜀黍鼠属术q树束戍竖墅庶数漱恕刯摔衰甩帅栓拴霜双爽谁水睡税吮瞬说硕朔烁斯撕嘶思私怸死肆寺嗣四伺似饲x耸怂颂送宋D搜艘擞嗽苏酥俗素速粟僛_溯宿诉肃酸蒜虽隋随l髓岁I遂隧祟孙损W蓑梭唆~琐索锁所塌他它她塔獭挞蹋t胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐p倘h淌趟烫掏涛滔l萄桃逃淘陶讨套特藤腾D梯剔t锑提题y啼体替嚏惕涕剃屉天d田甜恬舔腆挑条迢贴铁帖厅听烃汀廷停亭庭通桐酮瞳同铜彤童桶捅{统痛偷投头透凸U突囑־途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉|往旺望忘妄威巍微危韦违桅围唯惟为潍l苇萎委伟伪未蔚味畏胃喂位渭谓慰卫瘟温蚊文闻U吻E紊问嗡瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西矽晰嘻吔R牺稀息希悉膝夕惜熄烯溪汐犀檄袭席习媛_铣洗p隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜U咸贤衔舷闲涎u嫌显险现献县腺馅宪陷限U相厢镶香箱襄湘乡翔详惛_享项h像向象萧霄削哮嚣销消宵淆晓孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸Ҏ泄泻谢屑薪芯锌欣辛新d信衅星腥猩惺兴刑型Ş邢行醒幸杏性姓兄凶胸匈汚w熊休修羞朽嗅锈秀袖绣墟戌需虚嘘d许蓄酗叙旭序畜恤i婿l箋轩喧宣悬旋玄选癣眩绚靴薛学穴雪血勋熏循旬询寻驯ED汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟盐严研蜒岩ga颜阎炎沿奄掩D演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯U杨扬Y疡羊z阳氧Ԓ痒养h邀腰妖瑶摇遥H谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗UMA胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑v亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翌l茵荫因D音阴姻吟银淫寅饮a引隐印英樱婴鹰应~莹萤营荧蝇q赢盈媄颖硬映哟拥䄦臃痈应Rt蛹咏泳涌永恿勇用幽优悠忧尤由邮铀Ҏa渔R有友右佑釉诱又幼q淤于盂榆虞愚舆余俞N愉渝渔隅予娱雨与屿禹宇语玉域芋郁吁遇喻峪M愈欲p誉ʎ寓裕预U驭x渊冤元垣袁原援辕园员圆猿源缘q苑愿怨院曰约跃钥岳_月悦阅耘云郧匀陨允q蕴酝晕韵孕匝砸杂栽哉灾宰蝲再在咱攒暂赞赃脏葬遭p凿L早M蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎x札蝾铡闸眨栅榨咋乍炸诈摘斋宅H债寨L詹粘沄斩辗崭展蘸栈占战站湛l樟章嘪漛_掌涨杖丈帐̎仗胀瘴障招昭找沼늅|兆肇召遮折哲蛰辙者锗蔗这珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政症郑证芝枝支p知肢脂汁之织职直植殖执g址指止֏旨纸志挚掯致置帜峙制智U稚质炙痔滞ȝ中盅忠钟LU肿重仲众舟周州z诌_u肘帚咒皱宙昼骤珠株蛛q诸诛逐竹烛煮拄瞩׃著柱助蛀贮铸{住注祝L爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠~谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜仔籽滓子自渍字鬃踪宗综ȝ邹走奏揍U卒族诅ȝȝ嘴醉最|尊遉|左佐柞做作坐?/span>
 
二国标汉字Q?008个)

亍丌兀丐廿卅丕亘丞鬲孬噩oZ`匕乇夭爻卮氐囟胤馗毓N丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭创_剀剌剞剡剜蒯剽劂劁劐劓冂罔M仉仂仨仡仫仞伛伢T仵I伧伉伫佞佧攸佚佝佟佗伲伽佶u侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俛_倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘u俎龠汆ؐ兮巽黉馘冁夔勹匍a匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃冫冱冽冼凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹D谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧@谫谯谲谌谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邉邔R郏郅N郄郇郓郦郢郜郗郛郫郯N鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塑֢壅壑圩圬圪圳圹圮圯坜d坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芯苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茌荥荨茛荩荬荪荭荮莰荸莌莠莪莓莜莅荼莶莩荽莸荻莘莞莨菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廑ּ夼奁耷奕奚奘匏尢尬扌扪抟L拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨d吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕d哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啑֗喑啻嗟喽喑֖喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗑֘嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫d嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱dӇ帷幄q幛q幡岌屺岍岐岖岈岘岙岑岚岜g岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豛_巅彳彷徂徇徉後徕徙徜徨彛徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺ȝ猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧饨饩饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庌廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆_忭忸怙怉|怛怏怍怩怫怊怿怡恸Ҏ恺恂恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氉|汜汊沣沅沐沔沌汩ؐ汶沆沩泐泔沭h泱泗沲泠泖泺泫n沱泓泯mzҎz浃洇z洙z洮z|浒J涑揗涞涠涓涔浜挧渚淇淅淞渎涿淠渑淦淝淙渖|渌涮渫湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溽溻h溴滏溏滂溟Ş潆潇漤漕Ҏ漶潋潴漪漉澃澉澍澌潸潲潼潺濑ȉ澧ҎȂ濡Ȯ濞Ƞ濯瀚瀣瀛瀹늁灞宀宄宕宓宥宸甯骞搴寤寮褰寰y謇辶迓qEq迤q迦q逅逄逋逦逑逍逖逡逵选逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘d屐屙孱屣屦羼弪徃弭艴弼鬻屮妁妃妍妩妪妣妗姊妫妞妤姒妲妯姗妑֨娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尜孚孥孛_孓孢驵驷驔R驉K骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧U纡U纥U纩U纰Ul绂l绋l绐l绗l绠l绨l焝l绱l缍l羏lȝ~缂~缇~缋~缏~缒~缙~缛~缡~E~I~缧~O~݋~缰~q~缵q畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杉|枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梉|桴桷梓桫楮椟椠棹椤棰椋椁楗棣椐楱Ҏ楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣Ҏ榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橛樉|Ҏ樨橘檑檐檩檗檫LD殂D殄D殓D殚D殡D茢轭誄轲轳轵轶轸轷轹zD辁辂辄辇辋辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗h暌暧暝暾曛曜曦曩贲J贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰搿擘耄毪x毉|氅氇氆氍氕氘氙氚氡氩氤@氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽p肭肴肯胨胩胪胛胂胄胙胍胗朐胝胫p胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩D腭腧塍媵膈膂膑滕膣膪臌朦臊膻臁膦Ƥ欷Ҏ歆歙飑飒飓飕飙飚D_毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀Lq烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳늆熠燠燔燧燹爝爨灬焘煦Ҏ戽扃扈扉Cȝ祉祜祚祗祯祺禊禧_忐怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺ȝ砼砥砬砣砩硎硖砦硇硪碓碇碡碲碥磙磬礅礓C礞C龛黚wQ黼盱眄眍盹眇眈眚眢眙眭眦늜睐睑睇睃睚睨睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘|罟詈罨|窄|羁|盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钚w钼钽钉K铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪铩铫铮铯铳铴铵铷铹铼铽铉K锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锉锔RN镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕U秣U稆嵇稃E稞E稹EL黏馥I皈皎皓皙皤瓞瓠甬鸠鸢o鸩鸪鸫鸬鸲鸱鸉鸷鸹鸺D鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬ؕ鹭^疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃q痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯竦I穹HH窈H窦H窬H窭H衩衲衽衿袂袢裆袷D裢裎裣裥pD裾裰褡褙褓褛褊褴褫褶襁襦ȝ胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨p耵聃聆聍聒聩pR颃颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺D蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺p蛉蛏蚴蛩p蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缉|罄|舐竺竽W笃W笕W笫W筇W笪W笮WqW笤W笾W筘{筅{늭{筠{筻{筲{q箧箬箨箪箢箴篁篝篥篪篾簏簋@簸c籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羧羰籼敉粑_粜_粢_粼_糁p糌p糈p糗p艮暨羿翕翡翩翳pvE綮J纛麔R赌趑p赭豇豉酊酐酎酏酤酢酡酰酩酯酽N酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾跫t蹙y趵趼跖跗跚跞跎跏跛跆跬؜跸P跹跻跤踉跽踔t踟t踮t踯tt踵t踱y蹁y蹑y蹊yƈyDy躅w躔w躜w貂貊貅貘貔斛觖觞觚觜觥觫觯訾靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌N鼍隹隼隽雎雒瞉K銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟L靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骉骼髁髀髅髂髋髌髑魅魇魈魑飨餍饕饔髟髡髦髯髫髻髭髚w鬏鬓鬟鬣麽麾^麂麇麈麋麒鏖麝麟黛黜黝黠黟黢W黧黥黪黯鼢鼬鼯鼹鼷鼽N


]]>
软g架构设计要点http://www.shnenglu.com/humanchao/archive/2014/08/28/208167.html胡满?/dc:creator>胡满?/author>Thu, 28 Aug 2014 14:48:00 GMThttp://www.shnenglu.com/humanchao/archive/2014/08/28/208167.htmlhttp://www.shnenglu.com/humanchao/comments/208167.htmlhttp://www.shnenglu.com/humanchao/archive/2014/08/28/208167.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/208167.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/208167.html软g架构设计要关注哪些要点,我一直在思考这个问题?人类有计划的做事必有其强列的目的性,软g开发活动也不例外?/span>

软g不可能由一个h完成Q所以Y件的设计?/span>分层Q分模块Q便于h员分工,专业的h做专业的事情?/span>

软g的开发需要传承,铁打的营盘流水的兵,?/strong>的设计是优秀软g的共性,用普通hp理解的设计原则可以便于理늚传承?/span>
Z传承Q?/span>文档也很重要。文档是旉逝中最不容易生二义性的媒介Q好的文档ɾl验更好传播Q?/span>
另外文档化的工作之于设计阶段Q有利于思考的升华和快速成熟,比如所懂一门知识写成一本书Q仍焉要很多ȝ和提升的工作?/span>

软g的发布需要测试,靠h工驱动效率太低,那么?/span>数据驱动的自动化试能够大大提高试的效率?/span>

软g的成果需要市场化Q遇到问题要q行反馈和解冻I日志的设计很重要。当工程师一下子面对几M甚至几十M的数据时Q很隑ֿ速理出头l。如果通过查看最后几行,p明晰E序的动向,那程序的后期质量q步变得很畅?/span>

软g的功能会发展Q?/span>合理的抽?/strong>才能有效的应对变化,当我们可以预料到未来的变化,我们可以通过抽象接口的技术手D|前应寏V这L本在不断演进中,路不会越走越难?/span>

lg所qͼ好的软g设计需有具备以下特征:

1、分层,分模?/span>
2、简?/span>
3、有文档
4、数据驱?/span>
5、适量日志
6、合理的抽象

]]>
Exception in thread "main" java.lang.ClassNotFoundException: WordCounthttp://www.shnenglu.com/humanchao/archive/2014/05/27/207118.html胡满?/dc:creator>胡满?/author>Tue, 27 May 2014 11:28:00 GMThttp://www.shnenglu.com/humanchao/archive/2014/05/27/207118.htmlhttp://www.shnenglu.com/humanchao/comments/207118.htmlhttp://www.shnenglu.com/humanchao/archive/2014/05/27/207118.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/207118.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/207118.html
./bin/hadoop jar FirstJar/WordCount.jar WordCount input output

Ҏ如下的样子就可以?br />
./bin/hadoop jar FirstJar/WordCount.jar cn.edu.ruc.cloudcomputing.book.chapter03.WordCount input output


]]>
转:高性能服务端编E知识点梳理图解http://www.shnenglu.com/humanchao/archive/2014/05/19/207019.html胡满?/dc:creator>胡满?/author>Mon, 19 May 2014 09:06:00 GMThttp://www.shnenglu.com/humanchao/archive/2014/05/19/207019.htmlhttp://www.shnenglu.com/humanchao/comments/207019.htmlhttp://www.shnenglu.com/humanchao/archive/2014/05/19/207019.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/207019.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/207019.html


]]>
nodejs socket is connecthttp://www.shnenglu.com/humanchao/archive/2014/05/13/206945.html胡满?/dc:creator>胡满?/author>Tue, 13 May 2014 08:11:00 GMThttp://www.shnenglu.com/humanchao/archive/2014/05/13/206945.htmlhttp://www.shnenglu.com/humanchao/comments/206945.htmlhttp://www.shnenglu.com/humanchao/archive/2014/05/13/206945.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/206945.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/206945.html
var obj = new net.socket;            
if (!obj._handle)
{
    obj.connect(8080, '127.0.0.1', function() {
    send;
    });
}
else
{
    send;
}


]]>
转:CTime与CString怺转化 http://www.shnenglu.com/humanchao/archive/2014/05/13/206944.html胡满?/dc:creator>胡满?/author>Tue, 13 May 2014 08:05:00 GMThttp://www.shnenglu.com/humanchao/archive/2014/05/13/206944.htmlhttp://www.shnenglu.com/humanchao/comments/206944.htmlhttp://www.shnenglu.com/humanchao/archive/2014/05/13/206944.html#Feedback2http://www.shnenglu.com/humanchao/comments/commentRss/206944.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/206944.html转自Q?/span>http://blog.163.com/javy1225@126/blog/static/459230342009230115919910/


一.CTime转化为CString

CTime  tmSCan = CTime::GetCurrentTime();

CString szTime = tmScan.Format("'%Y-%m-%d %H:%M:%S'");

q样得到的日期时间字W串是?2006-11-27 23:30:59"的格?q是不是很方便呢?

 //取得CTime中的日期
 CString cstrDate = tmScan.Format("%Y-%m-%d");

 //取得CTime中的旉
 CString cstrTime = tmScan.Format("%H:%M-%S");

?CString转化为CTime的几U方?/span>

CString   timestr   =   "2000q?4?5?;   
  int   a,b,c   ;   
  sscanf(timestr.GetBuffer(timestr.GetLength()),"%dq?d?d?,&a,&b,&c);   
  CTime   time(a,b,c,0,0,0);     


--------or - ---------------------

 CString   s("2001-8-29   19:06:23");   
  int   nYear,   nMonth,   nDate,   nHour,   nMin,   nSec;   
  sscanf(s,   "%d-%d-%d   %d:%d:%d",   &nYear,   &nMonth,   &nDate,   &nHour,   &nMin,   &nSec);   
  CTime   t(nYear,   nMonth,   nDate,   nHour,   nMin,   nSec);

---- or ------------------------
CString   timestr   =   "2000q?4?5?;   
  int   year,month,day;   
  BYTE   tt[5];   
  //get   year   
  memset(tt,   0,   sizeof(tt));   
  tt[0]   =   timestr[0];   
  tt[1]   =   timestr[1];   
  tt[2]   =   timestr[2];   
  tt[3]   =   timestr[3];   
  year=   atoi((char   *)tt);   
    
  //get   month   
  memset(tt,   0,   sizeof(tt));   
  tt[0]   =   timestr[6];   
  tt[1]   =   timestr[7];   
  month   =   atoi((char   *)tt);   
    
  //get   day   
  memset(tt,   0,   sizeof(tt));   
  tt[0]   =   timestr[10];   
  tt[1]   =   timestr[11];   
    
  CTime   time(year,month,day,0,0,0);

从上面来?很明显用sscanf()函数的优?



]]>
转:一个故事告诉你比特币的原理及运作机?/title><link>http://www.shnenglu.com/humanchao/archive/2014/02/13/205741.html</link><dc:creator>胡满?/dc:creator><author>胡满?/author><pubDate>Thu, 13 Feb 2014 02:36:00 GMT</pubDate><guid>http://www.shnenglu.com/humanchao/archive/2014/02/13/205741.html</guid><wfw:comment>http://www.shnenglu.com/humanchao/comments/205741.html</wfw:comment><comments>http://www.shnenglu.com/humanchao/archive/2014/02/13/205741.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/humanchao/comments/commentRss/205741.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/humanchao/services/trackbacks/205741.html</trackback:ping><description><![CDATA[<p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">转自Q?a target="_blank" style="word-wrap: break-word; color: #336699; font-family: 微Y雅黑, 宋体; font-size: 14px; line-height: 21px; background-color: #dfdfdf;">http://blog.codinglabs.org/artic ... -easy.html#jtss-tqq</a><br /><br />周末花时间看了一些比特币原理相关的资料,虽然不敢说把每个l节都完全搞懂了Q不q整体思\和关键部分的主要原理q是比较明白。写一文章分享给大家。这文章的定位会比较科普,量用类比的Ҏ比特币的基本原理讲出来。这文章不会涉及算法和协议中比较细节的部分Q打后面会再写一程序员视角下的比特币原理,那里会从技术h员的视角Ҏ特币pȝ中较为关键的数据l构、算法和协议q行一些讲解?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">在这文章中我会l出一个虚拟的村庄?#8220;比特?#8221;Q整个文章会以讲故事的方式,逐步告诉大家比特币提出的动机、解决了什么问题以及一些关键组件的目标和设计方案?/p><span style="font-family: 微Y雅黑; line-height: normal; font-size: 32px; font-weight: bold; color: #ffffff;">问题的提?/span><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">我们先从比特币生的动机开始?/p><h2>以物易物的比Ҏ</h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">话说在这个世界上Q有一个叫比特村的村庄,村庄共有几百户h家。这个村庄几乎与世隔l,q着自给自的生zR由于没有大规模贸易Q比Ҏ村民一直过着以物易物的生z,也就是说村民之间q没有用统一的货币,互相间的贸易基本上就是老张家拿一袋面_换老李家一只羊Q王大嫂拿一{野果换刘大婶两布。村民们一直就q么U朴的生zȝ?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/8f2aeafae4d8498ebcff63d5a462599d/01.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><h2>实物货币</h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">l于有一天,村民觉得一直这样以物易物实在太不方便了Q于是村子全员开会,讨论如何解决q个问题。有人提议,以便于分割且E有的东西Q例如黄金,作ؓ一般等LQ把其它物品和黄金的对应关系~成一张表|例如一克黄金对应一只羊Q一克黄金对应一袋面_等{,此时老张再也不用扛着一袋面_气喘吁吁的去老李家换了Q他只要从家里摸Z克金子,可以去老李家牵回一只羊Q而老李拿着q一克黄金可以从M愿意面粉的h那里换回一袋面_,当然也可以换取Q何和一克黄金等值的物品?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">此时比特村进入了实物货币时代?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/18e8f6d8c7b54c8889b93fac30aa811c/02.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><h2>W号货币</h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">好景不长Q过了一D|_实物货币的弊端也出现了。因为比Ҏ附近金矿q不多,开采和冶炼金子太费时费力了。而随着使用Q金子L不断会因为磨损、丢失或有h故意囤积而发生损耗。全村h又一ơ坐在了一P开始商讨对{。此时有Q其实大家也不必一定要真的用黄金啊Q随便找张纸Q写?#8220;一克黄?#8221;Q只要全村h都认同这张纸q于一克黄金,问题不就解决了。其他hUL表示认同Q但同时也有了新的问题:真实的黄金是需要开采和冶炼的,金矿有限Q开采和冶炼也需要成本,所以没有h可以短期凭空刉大量的黄金Q可写字׃同了Q只要我U够W够Q随便像写多写多少Q那q就变成D安U多了,搞不好到时一万张U才能换一只羊Q实际上q就发生了经学上的通货膨胀Q?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">大家一想也是啊。不q此时又有h提出了解x案:q个U怸是谁写都有效Q我们只认村里d高望重的老村长写得,大家都认识老村长的字。老村长写一些纸Q同时按照各安金存量发l大家等量的U,例如老张家有二百克黄金,老村长就发给老张二百张写着“一克黄?#8221;的纸Q同时将老张家的黄金拿走作ؓ抉|。就q样Q老村长将村里所有黄金收归到自己的家里,q按各家上交的黄金数量发l等值的写有字的U。此时村民就可以拿着q些U当黄金q行贸易了,而且大家都认得老村长的字,其他Z造不出来。另外,如果谁的U磨损太严重Q也可拿到老村镉K里兑换新的等值的U,另外老村长承ZQ何h如果惌换成真黄金,只要拿纸回来Q老村长就会把{值的黄金q给那h。因村长写得纸的黄金量和真实放在家里的黄金量是一LQ所以只要严格按照销毁多纸新写多少U的原则Q每一张有效的U总能换回相应的真黄金?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">此时Q比Ҏq入了符可币(U币Q时代。而老村长就承担了政府和银行的角艌Ӏ?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/95f0aff46f574637b3411fe35aa99398/03.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><h2>中央pȝ虚拟货币</h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">又过了几q_老村长由于每天都要核对大量的旧纸币,写新的纸币,q要把各U̎目仔l做好记录。一来二去,老村长操劌度不qR鹤西M?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">比特村再ơ召开全体大会Q讨论应该怎么办。此时老村长的儿子二狗子自告奋勇接q了父亲的笔Q承担v货币发行的责仅R这个年ȝ村长二狗子很聪明Q他做了几天Q发现好像也不用真的写那么多U。完全可以这P村民把纸币都交上来,销毁,但是二狗子会记录下每户上交的U币数量。以后如果要q行付钱Q例如老张要拿一克金子向老李换一只羊Q就一L二狗子打个电话,说明要将老张名下的一克金子划归老李名下Q二狗子拿出账本Q看看老张名下是否有一克金子,如果有就在老张的名下减掉一克,在老李的名下加上一克,q样完成了支付Q此时老李在电话中听到二狗子确认{账完成,可以放心让老张把羊牵走了?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">此时比特村进入了中央pȝ虚拟货币时代。每个村民都不需要用实物支付Q支付过E变成了二狗子那边维护的账本上数字的变更?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/4b251b04a4eb4354b6800d34256d3d09/04.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><h2>分布式虚拟货?/h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">q新上Q的二狗子是聪明,不过qh有时候是聪明反被聪明误。有一天二狗子盯着q̎本,心想q全村各戯有多钱是我说的算Q那我岂不是……。于是他头脑一热,U自从老张帐下划了十克金子到自己名下?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">本以为天衣无~,但没惛_老张也有记̎的习惯,有一天他正要付钱却被二狗子告知̎h׃。老张核对了一下自q账本Q明明还有十克啊Q于是拿着账本L二狗子理论,q一核对发现了那W未l老张同意的{账?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">东窗事发Q比Ҏ炸开锅了。二狗子被弹劾是不可避免了,不过通过qg事,大家发现了̎本集中在一个h手里的弊端:</p><ul style="font-family: 微Y雅黑; font-size: 16px; line-height: normal; list-style-position: outside; list-style-image: none;"><li style="list-style: disc outside none;">q个体系完全依赖于̎本持有h的个Z用,如果q个Z守规矩,随意改账本Q那么整个货币系l就会崩?/li><li style="list-style: disc outside none;">如果q个人家里失火或者̎本失H,同样也会为整个体pd来毁灭性的打击</li></ul><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">正当Z不知所措时Q村里一个叫中本聪的宅男U学家走上了収ͼ告诉大家他已l设计了一套不依赖M中央处理人的叫比特币的虚拟货币系l,可以解决上述问题。然后他~缓讲述了自qҎ?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">下面我们来看看中本聪同学是如何设计q套pȝ的?/p><span style="font-family: 微Y雅黑; line-height: normal; font-size: 32px; font-weight: bold; color: #ffffff;">基础设施搭徏</span><h2>账簿公开机制</h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪首先说明,要对现有账簿q行如下攚w:</p><ol style="font-family: 微Y雅黑; font-size: 16px; line-height: normal;"><li style="list-style: decimal outside none;">账簿上不再记载每h民的余额Q而只记蝲每一W交易。即记蝲每一W交易的付款人、收ƾh和付N额。只要̎的初始状态确定,每一W交易记录可靠ƈ有时序,当前每个人持有多钱是可以推出来的?/li><li style="list-style: decimal outside none;">账簿q有改为公开Q只要Q何村民需要,都可以获得当前完整的账簿Q̎上记录了从账簿创徏开始到当前所有的交易记录?/li></ol><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">此言一出,下面立刻炔R了。第一条还无所谓,但是W二条简直无法接受,因ؓ账簿可是记录了所有村民的交易Q这样大家的隐私不全暴露了吗?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪倒是不慌不忙Q拿Z一对奇怪的东西?/p><h2>w䆾与签名机Ӟ公钥加密pȝQ?/h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪说Q大家不要慌。在他的q套机制下,M人都不用真实n份交易,而是使用一个唯一的代号交易?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">他展CZ手里奇的东西,说这两g东西分别叫保密印章和印章扫描器。后面他会给村里每一户发一个保密印章和一个印章扫描器。两者的作用如下Q?/p><ul style="font-family: 微Y雅黑; font-size: 16px; line-height: normal; list-style-position: outside; list-style-image: none;"><li style="list-style: disc outside none;">保密印章可以在纸上盖一个章Q每个印章盖出的章都隐含了一个全村唯一的一串字W,但是凭肉眼是看不出来的。也无法通过观察来制造出相应的印章?/li><li style="list-style: disc outside none;">印章扫描器可以扫描某个已l盖好的章,d隐含的信息,q在液晶屏上昄Z串字W?/li></ul><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">有了q两个神奇的东西Q大家就可以在不暴露真实w䆾的情况下q行交易了,而印章隐含的那一串字W就是这户h家的代号。具体如何y妙利用保密印章和印章扫描器进行交易,会在下文详述?/p><h2>成立虚拟矿工l织Q挖矿群体)</h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">下一步,中本聪面向全村招募虚拟矿工,招募要求如下Q?/p><ul style="font-family: 微Y雅黑; font-size: 16px; line-height: normal; list-style-position: outside; list-style-image: none;"><li style="list-style: disc outside none;">矿工以组为单位,一l可以是单独的一P也可以是几户联合Zl?/li><li style="list-style: disc outside none;">成ؓ矿工不媄响正怋用货?/li><li style="list-style: disc outside none;">矿工每天要花费一定时间从事比特币“挖矿”zdQ但是不同于挖金矿,虚拟矿工不需要拿着工具去野外作业,在家里就可以完成工作</li><li style="list-style: disc outside none;">矿工有一定可能性获得报酬,在挖矿活动中付出的努力越多,获得报酬的可能性越?/li><li style="list-style: disc outside none;">矿工可以随时退出,也可以随时有新的矿工加进?/li></ul><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">很快Q大U有五分之一的村民加入比特币矿工l织Q共分成?个组?/p><h2>建立初始账簿Q创世块Q?/h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">下面Q中本聪宣布Q先Ҏ二狗子手里的账簿Q把抉|的所有黄金按账簿记录的余额退q给每位村民Q然后彻底销毁这本̎ѝ?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">然后Q中本聪拿出一本新账簿Q在账簿的第一上记录了一些交易记录,特别的是Q这些记录的付款Z栏全都是“pȝ”Q而收ƾh分别是每个印章对应的隐含字符Q代表初始时刻,pȝ为每一户默认分配了一定数量比特币Q但是数量非常少Q都只有几枚Q甚x些不q的村户没有获得比特币?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">接着中本聪说Q由于目前市面上比特币非常少Q大家可以先回到用黄金做货币的时代,׃我不是村长,我也没有权利大家一定要承认比特币,大家可以自行军_要不要接受比特币。不q随着比特币的动和矿工的zdQ比特币会慢慢多h?/p><span style="font-family: 微Y雅黑; line-height: normal; font-size: 32px; font-weight: bold; color: #ffffff;">支付与交?/span><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">做了q么多铺垫,l于说到重点了,下面说一下在q样一个体pM如何完成支付。以老张付给老李10个比特币Z?/p><h3>付款人签|交易单</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">Z支付10个比特币Q老张首先要询问老李的标识字W串Q例如是“ABCDEFG”Q同时老张也有一个标识字W串例如?#8220;HIJKLMN”Q然后老张写一张单子,内容?#8220;HILKLMN支付10比特币给ABCDEFG”Q然后用自己的保密印章改一个章Q将q张单子交给老李。另外ؓ了便于追溯这W钱的来源,q要在单子里注明q笔q来源记在哪一,例如q个单子里,老张?0比特币来自徏立̎时pȝ的赠送,记录在̎第一c?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/515da9a2440a427598efa21712868c2c/05.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><h3>收款人确认单据签|h</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">老李拿到q个单子后,需要确认这个单子确实是来自“HIJKLMN”q个人(也就是老张Q签|的Q这个ƈ不困难。因为单子上必须有保密章Q老李拿出印章扫描器,扫一下章Q如果液晶屏昄出的字符和付ƾh字符是一致的Q这里是“HIJKLMN”Q,可以确认单子确实是付款人签|的。这是因为根据保密印章的机制Q没有其他h可以伪造印章,M一个h只要扫描一下印章,都可以确认单子的付款人和盖章人是否一致?/p><h3>收款人确认付ƾh余额</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">q个pȝ到目前还是很有问题。通过保密印章Q收ƾh虽然可以认付款人确实签|了q䆾单子Q但是无法自行确认付ƾh是否有够的余额支付。之前的中央虚拟货币pȝ中,二狗子负责检查付ƾh的余额,q知收款Z易是否有效,现在把二狗子开了,谁来负责记̎和确认每W交易的有效性呢Q?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">之前说过Q中本聪设计的这个系l是分布式货币系l,不依赖Q何中央h物,所以不会有一个或数几个责这件事Q最l承担这份工作的是之前所提到的矿工组l。老张、老李和全村其他Q何用比特币q行交易的村民都依赖矿工l织的工作才能完成交易?/p><h2>矿工的工?/h2><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">矿工的工作是整个pȝ的核心,也是最复杂性最高的地方。下面逐步介绍矿工的工作内容和目的?/p><h3>矿工的工?/h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">俗话_工欲善其事,必先利其器。比特币矿工虽然不用铁撅、铁锨和探照灯等工具Q不q也要有一些必备的东西?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">初始账簿。每个组首先自己复制一份初始̎,初始账簿只有一,记录了系l的W一ơ赠?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">I̎纸。每个小l有若干账簿U,每一늺上仅有̎结构,没有填内容,具体内容的书写规则后面讲q。下面是一张空账簿U的样子Q各个字D늚意义后面会说?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/94834a042e974f01be8cc5c77f723db4/06.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">~码生成器(哈希函数Q。中本聪又向矿工l织的每个组分发了若q编码生成器Q这个东西很奇Q将一̎填好内容的账簿U放入这个机器,机器会在账簿U的“本̎单编?#8221;一栏自动打C串由“0”?#8220;1”l成的编P?56个。最奇的是Q编L成器有如下功能:</p><ul style="font-family: 微Y雅黑; font-size: 16px; line-height: normal; list-style-position: outside; list-style-image: none;"><li style="list-style: disc outside none;">生成的编号仅与̎纸上填入的内容有关Q与填写人、字体、填写时间等因素均无?/li><li style="list-style: disc outside none;">内容相同的̎纸生成的编hL相同Q但是如果内容哪怕只改一个字W,~号׃面目全非</li><li style="list-style: disc outside none;">~码生成器在打印~码时还需要将所有填入̎纸的交易单攑օQ机器会扫描交易单和填入交易单的一致性,其是保密印章,如果发现保密印章和付ƾh不一_会拒l打印编?/li><li style="list-style: disc outside none;">一张已打印的̎纸攑օQ机器会判定~号是否是有效的机器打印Qƈ且判定编号和内容是否一_q个~号无法伪?/li><li style="list-style: disc outside none;">交易单收件箱。每个矿工小l需要在门口挂一个箱子用于收集交易单?/li><li style="list-style: disc outside none;">公告ѝ每个矿工小l同样需要一个公告板公示一些信息?/li></ul><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">有了上面的工P矿工l织可以开工了Q?/p><h3>攉交易?/h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪规定,每笔交易的发起hQ不但要交易单l到收款人,q要同时复制若干份一模一L交易单投递到每个矿工组的收件箱里?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">矿工组的h定期到自q收g里把收集到的交易单一q取出来?/p><h3>填写账簿</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">此时组的h拿出一张空的̎纸Q把q些交易填写?#8220;交易清单”一栏,同时扑ֈ当前账簿最后一,最后一늚~号抄写?#8220;上一张̎单编号一?#8221;。注意还有个“q运数字”Q可以随便填上一个数字,?2345。然后,这栯̎纸攑օ~号生成器,打印好编P一张̎就完成了?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">如果你以为矿工的工作p么简单,那就大错牚w了,中本聪有个变态的规定Q只有编L?0个数均ؓ0Q这̎纸才算有效?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">Ҏ之前对编L成器的描qͼ要修改编P只能修改账簿U的内容Q?#8220;交易清单”?#8220;上一张̎纸~号”是不能随便改的,那么只能改幸q数字了。于是ؓ了生成有效的账簿U,组里的矿工׃断抄写̎纸Q但每张U的q运数字都不同,然后不断的重复将U放入编码器Q如果生成的~号不符合规定,q张U就废了,重复q个q程直到生成一串有效的~号?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">我们知道Q如果编L每一个数字都是随机的Q那么^均写1000多张q运数字不同的纸才能获得一个有效的~号?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">q就奇怪了Q这些矿工ؓ什么要拼命q这看似无意义的事情呢?q记得之前说q矿工有报酬吧,q就是矿工的动力了。中本聪规定Q每一张̎纸的交易清单第一条交易ؓ“pȝl这个小l支?0个比特币”。也是_如果你生成了一张有意义的̎纸Qƈ且被所有挖矿小l接受了Q那么就意味着q条交易也被接受了,你的挖矿组获得?0个比特币?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">q就是矿工被叫做矿工的原因,也是Z么之前说随着交易和矿工的zdQ比特币的数量会不断增多。例如下面是一个挖矿过E,q个组的公共比特币帐号?#8220;UVWXYZ”?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/ca26c7a09fe64c98a13efeb2c0837454/07.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">在幸q数字尝试到“533”Ӟpȝ生成了一|效̎ѝ?/p><h3>认账簿</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">当某挖矿组q运的生成了一张有意义的̎,Z得到奖励Q必ȝ刻请其它组认自己的工作。前面说q,当前村里?个挖矿组Q所以这个小l必d有效账簿U誊?份快马加鞭送到其他6个小l请求确认?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪规定,当某个小l接到其他小l送来的̎纸Ӟ必须立即停下手里的挖矿工作进行̎确认?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">需要确认的信息有三个:</p><ol style="font-family: 微Y雅黑; font-size: 16px; line-height: normal;"><li style="list-style: decimal outside none;">账簿的编h?/li><li style="list-style: decimal outside none;">账簿的前一̎有?/li><li style="list-style: decimal outside none;">交易清单有效</li></ol><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">首先看第一个,q个认比较单。只要将送来的̎纸攑օ~码生成器进行验证,如果验证通过Q则~号有效?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">W二部分需要将账簿上?#8220;上一̎纸~号”和这个小l目前保存的有效账簿最后一늼h对,如果相同则确认,如果不同Q需要顺着已有账簿向前比对Q直到找到这个编Lc如果没有找到指定的“上一̎纸~号”对应的页Q这个小l会此丢掉。不予确认?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">注意Q由上面的机制可以保证,如果各个组手里的̎纸是相同的Q那么他们都能按同样的顺序装订成相同的̎ѝ因为后面一张纸的编hL依赖前面的纸的编P~码生成器的机制保证了所有合法̎纸的相对先后顺序在每个组那里都是相同的(可能会有分支Q但不会出现环,后面l讲Q?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/1b2cb854abf94b27bfc392a61bc39107/08.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">最后是如何认交易清单有效Q其实也是要确认当前每W交易的付款人有_的余额支付这W钱。由于交易信息里包含q笔钱是如何来的Q还包含了记录来源交易的账单~号。例如,HIJKLMN要给ABCDEFG10个比特币Qƈ注明了这10个比特币来自之前OPQRST支付lHIJKLMN的一W交易,认旉先要认之前q笔交易是否存在Q同时还要检查HIJKLMN在这之前没有这10个比特币支付l别人。这一切确认后Q这W交易有效性就被确认了?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">其中W一W是pȝ奖励l生成这̎的组?0个,q笔交易大家都默认承认,后面的只要按照上q方法追溯,可以确认HIJKLMN是否当前真有10个比特币支付lABCDEFG?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">如果完成了所有了上述验证q全部通过Q这个小l就认可了上q̎纸有效Q然后将q张账簿Uƈ入小l的主̎,舍弃目前正在q行的工作,后面的挖矿工作会Zq本更新后的主̎本进行?/p><h3>账簿认反馈</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">对于挖矿组来说Q当账簿UR出dQ如果后面有收到其他组送来的̎纸Q其“上一̎纸~号”׃前送出ȝ账簿U,那么pCZ们的工作成功被其他小l认可了Q因为已l有组Z他们的̎纸l箋工作了。此Ӟ可以_略的说可以认ؓ已经得到?0个比特币?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">另外QQ何一个小l当新生成有效̎纸或确认了别的组的̎纸Ӟ将最新被q个组承认的交易写到公告牌上,那么收款人只要发现相关交易被各个组认可了,基本可以认W钱已经C自己的̎上,后面他就可以在付ƾ时钱的来源指向这W交易了?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">以上是整个比特币的支付体系。下面我们来分析一下,q个体系Z么可以工作下去,以及q个体系可能面的风险?/p><span style="font-family: 微Y雅黑; line-height: normal; font-size: 32px; font-weight: bold; color: #ffffff;">工作机制分析</span><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">虽然上面阐述了比特币的基本运作规则,但是村民们还是有不少疑问。所以中本聪同学专门开了个{疑会,解答常见问题。下面ȝ一下村民最集中兛_的问题?/p><h2>核心问题{疑</h2><h3>如果同时收到两䆾合法的̎K怎么办?</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">注意在上面的q行机制中,各个挖矿组是ƈ行工作的Q因此完全可能出现这L情况Q某组收到两䆾不一L账簿,它们都基于当前这个小l的主̎的最后一,q且内容也都完全合法Q怎么办?</p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">关于q个问题Q中本聪同学_组不应该以U性方式组l̎,而应该以树状l织账簿QQ何时刻,都以当前最长分支作Z账簿Q但是保留其它分支。D个例子,某小l同时收到A、B两䆾账簿,l核都是合法的Q此时小l应该将两页以分叉的形式l织hQ如下图所C:</p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/8cf6ab02a76549b595146ed0441e84ce/09.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">黑色表示当前账簿d。此Ӟ可以随便选择一个页作ؓ当前d支,例如选择AQ?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/2fe292bebdfa49ebbca45c7bc3846230/10.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">此时如果有一个新的̎K是基于A的,那么q个dgl下去:</p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/74c57834faf54e4fb0a8a3456315bb0b/11.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">如果q个d一直这么gl下去,表示大家基本都以AZqԌB׃被遗忘。但是也有可能忽然B变成更长了:</p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/6999a175b21947c3b60c356e3ad13153/12.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">那么我们需要将B分支作ؓ当前dQ基于这个分支进行后l工作?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/bd33fb36532646188c87c6884fbd9999/13.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">从局部来看,虽然在某一时刻各个组的̎主q可能存在不一_但大方向是一致的Q那些偶由于不同步产生的小分支Q会很快被没在历史中?/p><h3>如果挖矿组有h伪造̎怎么?/h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">关于q个问题Q中本聪同学_只要挖矿l织中大多数人是诚实的,q个pȝ可靠,具体分几个方面给予答复?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">首先Q基于保密印章机Ӟ没有伪造他n份进行付ƾ,因ؓ~码生成器在打印~码时会核对所有交易单的保密印章,印章和付ƾh不一致会拒绝打印?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">而且诚实的矿工也不会承认不合法的交易Q如某笔交易付款方余额不够)?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">所以只有一U可能的d行ؓQ即在收ƾh认收款后,从另一条分支上建立另外的交易单Q取消之前的付款Q而将同一W钱再次付款l另一个hQ即所谓的double-spending问题Q。下面同L一个例子说明这个问题?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">先假设有一个攻击者拥?0个比特币Q他准备这W钱同时支付l两名受完A和BQƈ都得到承认?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">W一步,d者准备从受害者A手里?0比特币的黄金Q他{v交易单给受害者AQ{10个比特币l受完A?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/5e17cb5e3488458fbc047b7059465727/14.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">W二步,q笔交易在最新的账簿中被确认,q被各个挖矿组公告出来。受害hA看到公告Q确认比特币到̎Q给了攻击?0个比特币{值的黄金?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/3f7e7f5fe5a84a2d9f9d33988519196a/15.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">W三步,d者找到̎,从包含刚才交易的账簿늚前一做Z个分支,生成更多的̎单页Q超q刚才的分支。由于此时刚才攻击者制造的分支变成了主q分支,而包含受完A得到q分支变成了旁支,因此挖矿l织不再承认刚才的{账,受害者A得到?0比特币被取消了?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/b1ca01e9a08b4f69affdd97e2e319ff3/16.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">W四步,d者可以再ơ签|交易单Q将同一W钱支付l受完B。受完B认钱到账后Q支付给d者等值黄金?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;"><img src="file:///C:/Users/mchu/AppData/Local/YNote/Data/humanchao_2@163.com/2779188b8c814bd1a613b78768990a21/17.png" data-media-type="image" data-inited="true" style="cursor: default; display: inline-block;" alt="" /></p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">xQ攻击者将10个比特币׃两次Q从两名受害者那里各购得{值黄金。攻击者还可以如法炮制Q取消与受害者B的{账,同一W钱再支付给其他?#8230;…</p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">关于q种dQ中本聪l出的解x案是Q徏议收ƾh不要在公告挂出时立即认交易完成Q而是应该再看一D|_{待各个挖矿组再挂?张确认̎,q且之前的̎没有被取消Q才认钱已到̎?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪解释道Q之前设定变态的~号规则Q正是ؓ了防御这一炏V根据前面所qͼ生成有效账簿不是那么简单的Q要p大量的h力反复试不同的幸q数字,而且q程完全是碰q气。如果某账簿包含你收到q认Qƈ且在后面又gl了6个,那么d者想要在落后6늚情况下从另一个分支赶当前主分支是非常困隄Q除非攻击者拥有非常多的h力,过其他所有诚实矿工的人力之和?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">而且Q如果攻击者有如此多h力,与其p么大力气搞这U攻击,q不如做良民挖矿来的收益大。这׃动机上杜l了d的Ş成?/p><h3>比特币会一直增加下去,岂不是会严重通货膨胀</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">中本聪说Q这一Ҏ也想C。前面忘了说了,我给矿工l织的操作细则手册会说明Q刚开始我们协议每生成一̎,奖励组50个比特币Q后面,每当账簿增加21,000,奖励减半,例如当达?10,000后Q每生成一̎奖?5个比特币Q?20,000后Q每生成一奖?2.5个,依次cLQ等账簿辑ֈ6,930,000后Q新生成账簿就没有奖励了。此时比特币全量Uؓ21,000,000个,q就是比特币的总量Q所以不会无限增加下厅R?/p><h3>没有奖励后,没人做矿工了,岂不是没人帮忙确认交易了</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">到时Q矿工的收益会由挖矿所得变为收取手l费。例如,你在转̎时可以指定其?%作ؓ手箋Ҏ付给生成账簿늚组Q各个小l会挑选手l费高的交易单优先确认?/p><h3>矿工如果来多Q比特币生成速度会变快吗</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">不会。中本聪解释Q虽然可以Q意加入和退出矿工组l,D矿工人数变化Q每个矿工也会拿C个编码生成器Q不q我已经在编码生成器中加入了调控机制Q当前工作的~码生成器越多,每个机器的效率就低Q保证新账簿는成速率不变?/p><h3>虽然每个人的代号是匿名的Q但如果泄露了某个h的代P账簿又是公开的,岂不是他的所有̎目都查出来了</h3><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">实是这L。例如你要和某h交易Q必然要要到他的代号才能填写交易单。因为收ƾh一栏要填入那h的代受不q中本聪说可以提供无限制的保密印章,每一ơ交易用不同的保密印章,q样查̎就q查不到同一个h的所有̎目了?/p><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">{疑完毕?/p><span style="font-family: 微Y雅黑; line-height: normal; font-size: 32px; font-weight: bold; color: #ffffff;">说明</span><p style="margin-right: 0px; margin-left: 0px; font-family: 微Y雅黑; font-size: 16px; line-height: normal; color: #333333;">本文用通俗比喻的方式讲解了比特币的q行机制。有几点需要说明:</p><ol style="font-family: 微Y雅黑; font-size: 16px; line-height: normal;"><li style="list-style: decimal outside none;">Z便于理解Q我做了很多化,因此有些机制l节和实际的比特币可能不完全相同。但M思想和关键原理是一致的?/li><li style="list-style: decimal outside none;">׃很多计算Z界的东西Q如公钥体系、网l传输)在现实世界中q没有特别好的对{物Q所以故事里隑օ有一些生和不合常理的细节?/li><li style="list-style: decimal outside none;">本文描述的是比特币网l本w的技术原理和q作机制Q当在如Mtgoxq种买卖市场中进行比特币交易Ӟ市场做了中间代理Qƈ不遵从上q机?/li></ol><span style="font-family: 微Y雅黑; line-height: normal; font-size: 32px; font-weight: bold; color: #ffffff;">参?/span><ol style="font-family: 微Y雅黑; font-size: 16px; line-height: normal;"><li style="list-style: decimal outside none;"><a style="cursor: pointer; color: #0099cc;">Bitcoin: A Peer-to-Peer Electronic Cash System</a></li><li style="list-style: decimal outside none;"><a style="cursor: pointer; color: #0099cc;">https://bitcoin.it</a></li><li style="list-style: decimal outside none;"><a style="cursor: pointer; color: #0099cc;">云风的BLOG: Bitcoin 的基本原?/a></li><li style="list-style: decimal outside none;"><a style="cursor: pointer; color: #0099cc;">易懂的比特币工作机理详解</a></li></ol><img src ="http://www.shnenglu.com/humanchao/aggbug/205741.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/humanchao/" target="_blank">胡满?/a> 2014-02-13 10:36 <a href="http://www.shnenglu.com/humanchao/archive/2014/02/13/205741.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>q就是搜索引擎-W试6-链接分析http://www.shnenglu.com/humanchao/archive/2013/11/12/204224.html胡满?/dc:creator>胡满?/author>Tue, 12 Nov 2013 06:06:00 GMThttp://www.shnenglu.com/humanchao/archive/2013/11/12/204224.htmlhttp://www.shnenglu.com/humanchao/comments/204224.htmlhttp://www.shnenglu.com/humanchao/archive/2013/11/12/204224.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/204224.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/204224.html搜烦引擎在查找时主要考虑两方面因素:|页和查询的相关性、网늚重要?/span>
链接分析解决|页重要性的问题
|页中最重要的三个要素,出链QOut LinkQ,入链QIn LinksQ,锚文?/div>
链接分析法
1、随机游走模型:对直接蟩转和q程跌{两种用户览行ؓq行抽象的概忉|型,用户从当前网到达某|页的概?/div>
2、子集传播模型:把网划分ؓ若干子集Q给予子集内|页初始权|Ҏ链接关系Q按照一定方式将权g递到其他|页
不同子集传播模型在如下方面存在差异:
1Q如何定义特D子集合
2Q在定了特D子集合所h的性质后,如果对子集内的网赋初始?/span>
3Q从Ҏ子集合将其分g播到其他|页Ӟ采取何种传播方式
PageRank法
除了考虑到入链数量的影响Q还参考了|页质量因素
数量假设Q在Web图模型中Q如果一个页面节Ҏ收到的其他网|向的入链数量多Q那么这个页面越重要
质量假设Q质量高的页面会通过链接向其他页面传递更多的权重
法开始赋予每个网늛同的重要性得分,通过q代递归计算来更新每个页面节点的PageRank得分Q直到稳定ؓ?/div>
q程跌{Q解决链接陷q通用方式Q在|页向外传递分值时Q不限于向出链所指网传递,也可以以一定的概率向Q意其他网蟩转(虚拟边,权值通过虚拟边向外传递)
HITS(Hypertext Induced Topic Selection)法

Authority面Q某个领域或者某个话题相关的高质量网?/div>
Hub面Q指向很多Authority面
基本假设1Q一个好的Authority面会被很多好的Hub面指向
基本假设2Q一个好的Hub面会向向很好的Authority面
法步骤Q?/strong>
1、将查询提交l某个现有的搜烦引擎Q或索系l,提取排名靠前的结果(栚wQ?/div>
2、在栚w的基上,对其扩充Q凡是与栚w内网|直接链接指向关系的网都被扩充进来)
3、在栚w+扩充|页Q寻扑֥的Hub面与好的Authority面
4、初始情况下Q在没有更多可利用信息前Q把所有页面两个权值都讄?
5、以怺增强的关pȝ原则q行多轮q代计算Q每轮P代计更新每个页面的两个权|直到权值稳定ؓ?/div>
HITS法不仅在搜索引擎领域应用,在自然语a处理Q社交分析也有较好的效果
HITS法的不I计算效率较低、主题漂U,易被作弊者操U늻果,l果不稳定(d删除个别|页或者改变少数链接关p,Ҏ名媄响会很大Q?/div>
HITS法与PageRank法比较
1、HITS与用戯入查询相养IPageRank与查询无?/div>
2、HITS计算效率低,PageRankȝ计算Q在U直接用计结果,计算效率?/div>
3、HITS为局部计,适合在客LQ?span style="font-size: medium; ">PageRank为全局计算Q适合步骤在服务器?/span>
4、HITS适合处理具体用户查询Q?/span>PageRank处理适合处理宽泛?/span>用户查询
5、HITS法在计时Qؓ每个面计算两个分|PageRank只需计算一个分|在搜索引擎领域,更重要Authority权|其他应用领域Hub分g很重?/span>
6、从反作弊角度说Q?span style="font-size: medium; ">PageRank从机制上优于HITS
7?/span>PageRank比HITS计算q程更稳定,原因?/span>PageRank计算时的q程跌{

SALSA法
很多实验数据表明QSALSA是目前最好的链接分析法之一
计算程分两个阶D:
1、确定计对象集?/strong>Q与HITScM
1Q扩展网集合,在收到用h询后Q利用现有搜索引擎或索系l获取根集,q扩?/div>
2Q{换ؓ无向二分图,一个子集合Hub集合QAuthority集合
2、链接关pM播过E?/strong>Q在q一阶段采纳了随机游走模?/div>
在权g播过E中Q权值是被所有链接^均分配的
HITS模型x的是Hub?span style="font-size: medium; ">Authority之间的节点相互增强关p?/span>
SALSA实际上关注的是Hub-Hub?/span>Authority-Authority之间的节点关p?/span>
Authority集合内从某个节点i转移到另一个节点j的概率,i与j之间概率是不同的Q非对称
在二分图中,对于Authority集合内的某个节点来说Q一定可以通过Hub子集合的节点中{后再ơ返回本w?/span>
建立?/span>Authority节点关系囑֐Q即可利用随机游走模型来计算每个节点?/span>Authority权?/span>
SALSA搜索结合排序问题进一步{换ؓ?/strong>Authority节点矩阵的主U问?/strong>Q无需q代Q计速度?/span>
军_Authority权值的4个因?/strong>Q?/span>
1Q?/span>Authority子集合中包含的节ҎL
2Q网i所在连通图中的节点个数
3Q网i所在连通图中包含的入链L
4Q网i的入链个?/span>
SALSA法的特?/strong>Q?/div>
1、SALSA法无需像HITS法一栯P代计,计算速度?/span>
2、解决了HITS主题漂移的问题,搜烦质量优于HITS
主题敏感PageRank
该算法被Google使用在个性化搜烦服务中,非常适合作ؓ个性化搜烦的技术方?/div>
用户会对某些领域感兴,同时当浏览某个页面时Q这个页面也是与某个主题相关Q蟩转时Q更們֐于点d当前面主题cM的链?/div>
主题敏感PageRank是将用户兴趣Q页面主题及链接所指向|页与当前网主题的怼E度l合考虑而徏立模?/div>
该算法引?6U主题类型,对于某个|页来说Q对应某个主题类型都有相应的PageRank分?/div>
主题敏感的PageRank与主题相养I在接收到用户查询后,主题敏感PageRankq需要利用分cdQ计该查询隶属于事先定义好?6个主题的怼度,q在排序时利用此怼度信?/div>
计算程Q?/div>
1、离U的分类主题PageRank数D,计算|页对于16个分cȝ怼?/div>
     网划分ؓ两个集合Q一个ODP对应分类主题对应的所有网SQ剩下的|页为另一个集合T
     通过链接关系Q从S向T传递权重,卌网|属类别的概率
2、在U利用算好的PageRank分|来评估网和用户查询的相似度
     通过计算查询词所属类别的概率*|页所属类别的概率Q得Z者相x的分|q行排序
HillTop法
1、从量的互联网|页中通过一定的规则选出专家面子集合,q单独ؓ其徏立烦?/div>
2、接收用户发出的查询hӞҎ用户查询的主题,从专安面子集合中找出部分相x最强的专家面Q对每个专家面计算相关性得?/div>
3、根据目标页面(从烦引系l中中取到的面Q和q些专家面的链接关p?对目标页面进行排?/div>
4、整合相关专安面和得分较高的目标页面作为搜索结果,q回l用?/div>
从属l织面Q主机IP地址的前3个网D늛同,|站域名中的d名相?/div>
专家面
1、与某个主题相关的高质量面
2、这些页面的链接所指向的页面相互之间是非从属组l页?/span>
3、这些被指向的页面大多数是与专家面主题相近
HillTop可以与某个排序算法相l合Q不适合作ؓ一个独立的|页排序法来用,因ؓ当无法得C个够大的专安面时Q会q回I结果?/div>
步骤1Q专安面搜?/strong>
??千万|页中,{选出250万作Z安面,专家面特征:
1、页面中臛_包含K个出链,K可以Zؓ指定
2、K个出链指向的所有页面相互之间的关系Q都W合非从属组l页?/div>
对专安面单独徏索引Q且只对关键字段(Key Phrase)q行索引Q关键字D包?cM息:|页标题QH1标签内文字和URL锚文?/div>
关键字段有媄响范_可以支配Qualify的链接)Q依ơؓQ标?>H1标签->URL锚文?/div>
在计网|序时Q对查询字段在不同的关键字段中,会用不同的权?/div>
pȝ接收到用h询QQ将对专安面进行打分,主要考虑以下3cM息:
1、关键字D包含了多少?/div>
2、关键片D|w的cdQ即关键字段的类?/div>
3、用h询和关键词的失配率,卛_键字D中不属于查询的单词个数占关键片D|d词个数的比率
步骤2Q目标页面排?/strong>
Hilltop法包含的基本假设:一个目标页面如果是满用户查询的高质量搜烦l果Q其充分必要条g是该目标面有高质量专家面链接指向
Z证上q假讄成立QHilltop法在这个阶D需要对专家面的出链仔l进行甄别,以保证查询时Q选出那些和查询密切相关的目标面?/div>
在进行传递分g前,首先需要对链接关系q行整理Q?strong>能够获得专家面分值的目标面需要满以下两点要求:
条g1、至需要两个专安面有链接指向目标面Q且两个专家面不能是从属组l页?/div>
能够获得传递分值的目标面一定有多个专家面链接指向Q目标页面所获得的M播分值是每个有链接指向的专家面所传递的分g?/div>
条g2、专安面和所指向的目标页面不能是从属l织面
目标面权D步?/strong>Q?/div>
1、找C安面中那些能够支配面的关键片D集合S
2、统计S中包含用h询词的关键片D个数TQT大权D?/div>
3、专安面给目标面传递分|E*T,EZ安面本w在W一阶段计算得到的相兛_分,T为b步骤计算分?/div>
对于包含多个查询词的用户hQ则每个查询词单独计,多个查询词的传递分值篏?/div>
Hilltop法存在与HITS法cM的计效率问题,随着专家面集合的增?/div>
其他改进法
1、智能游走模?Intelligent Surfer Model)
判断|页包含的链接所指向的网内容和用户查询的相x,以此来改善链接分析效?/div>
2、偏|游走模?Biased Sufer Model)
游走模型考虑的是|页内容和用h询的相关性,而偏游走模型考虑的是链接指向的网内容和当前览|页内容之间的相似?/div>
3、PHITS法(Probability Analogy of HITS)
PHITS是对HITS法的直接改q?/span>PHITS法认ؓ不同链接其传递权值的能力应该是不同的Q?/span>PHITS需要计两个页面S和T之间链接的连接强?/span>
链接的强度依据页面S和T之间怼度确?/span>
4、BFS法(Backward Forward Step)
对SALSA法的扩展,对HITS法的限?/div>
解除了SALSA法只允许直接相ȝ|能有影响的限Ӟ只要|页S和T可通达Q即可对|页T施加影响Q如果网S距离|页T距离远Q那么网S的媄响就随着距离增大而呈现衰?/div>

]]>q就是搜索引擎-W试5-索模型与搜烦排序http://www.shnenglu.com/humanchao/archive/2013/11/04/204084.html胡满?/dc:creator>胡满?/author>Mon, 04 Nov 2013 04:56:00 GMThttp://www.shnenglu.com/humanchao/archive/2013/11/04/204084.htmlhttp://www.shnenglu.com/humanchao/comments/204084.htmlhttp://www.shnenglu.com/humanchao/archive/2013/11/04/204084.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/204084.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/204084.html索模型与搜烦排序
最重要的两个因素,用户查询与网늛x,|页链接情况
索模型:用户查询与网늛x?/span>
布尔模型Q向量空间模型,概率模型Q语a模型Q机器学习排序算?/span>

布尔模型Q数据基是集合论Q搜索结果过于粗p,无法量化搜烦词与文档之前的相x?/div>

向量I间模型Q把文档看做是由Tl特征组成的一个向量,最常用的是以单词作为特征,实际应用中,文档的维度相当高Q成千上万)
查询和文档之间的内容相似性作为相x的替代
计算怼性,使用COSINEQ计查询词特征权g文档中每个特征权值向量的点积
特征权重Q由词频TfQ逆文档频率IDF定
词频TfQ?/span>Wtf=a+(1-a)*Tf/Max(Tf)
a?.4效果较好
逆文档频率因?/strong>Q文档集合范围的一U全局因子Q特征单词之间的相对重要?/div>
有研I者进一步分析认为:IDF代表了单词带有的信息量的多少Q熵Q,其D高,说明其信息含量越多,有价?/div>
IDFk=log(N/nk)
N代表文档集合中d有多个文档Qnk代表特征单词k在其中多个文档中出现过
Weight_word=Tf*IDFQ特征权D大,可能是好的指示?/div>
查询词在某个文档中的词频高Q在其他文档中出现的词频低Q这个词的权D?/strong>
向量I间模型是经验型的模型,靠直觉和l验不断摸烦完善Q缺乏明的理论指导改进方向
概率排序原理Q给定一个用h询,如果搜烦pȝ能够在搜索结果排序时按照文档和用户需求的相关性由高到低排序,那么q个搜烦pȝ的准性是最优的?/div>
P(D|R)/P(D|NR)大小q行降序排列Q得到搜索相x排?/div>

二元独立模型

二元假设Q?/strong>一遍文档在q征进行表C的时候,以特?#8220;出现”?#8220;不出?#8221;两种情况来表C?/div>
词汇独立假:文档中出CQ意一个词在文档的分布概率不依赖于其他单词是否出现

BMI模型Q基于二元假设推D出Q对于单词特征,只考虑是否在文档中出现q,而了考虑单词的权?/span>
P(D|R)/P(D|NR) = pi(1-si)/si(1-pi)
log( pi(1-si)/si(1-pi) )
pi代表Wi个单词在相关文档集合内出现的概率Q在二元假设下,可以用包含这个单词的相关文档个数ri除以相关文档LR来估,pi=ri/R
si代表Wi个词在不相关文档集合内出现的概率Q可以用包含q个单词的不相关文档个数ni-riQ除以不相关文档L(N-R)来估,si=(ni-ri)/(N-R)
加上qx处理
log((ri+0.5)/(R-ri+0.5)
/
(ni-ri+0.5)/((N-R)-(ni-ri)+0.5))
其含义:对于同时出现在用h询Q和文档D中的单词Q篏加每个单词的估|其和是文档D和查询相x度量?/div>

BM25模型
在BIM模型的基上,考虑了单词在查询中的权值及单词在文档中的权|拟合出综合上q考虑因素的公式,q过引入一些经验参?/div>
BM25模型是目前最成功的内Ҏ序模?/div>
http://hi.csdn.net/attachment/201011/30/0_12911307384w69.gif

k1,k2,K均ؓl验讄的参敎ͼfi是词在文档中的频率Q?/span>qfi是词在查询中的频率?/span>

K1通常?/span>1.2Q通常?/span>0-1000

K的Ş式较为复?/span>

K=http://hi.csdn.net/attachment/201011/30/0_1291130766F92C.gif 

上式中,dl表示文档的长度,avdl表示文档的^均长度,b通常?/span>0.75
BM25F模型Q是典型的BM25改进法
文档内容切换成不同的部分,Z同的部分赋予不同的权?/div>
语言模型ҎQ借鉴语音识别领域采用的语a模型技术,语a模型和信息检索相互融?/div>
为每个文档徏立一个语a模型Q语a模型代表了单词或者单词序列在文档中的分布情况
对于查询中的单词来说Q每个单词都对应一个抽取概率,这些单词的抽取概率怹是文档生成查询的M概率
一般采?strong>数据qx方式解决数据E疏问?/div>
用户提交查询QQ文档集合内所有文档都计算生成Q的概率,然后按照生成概率值由大到排序,是搜烦l果
HMMQ隐马尔U夫语言模型、相x型、翻译模型是在基本语a模型的改q?/div>
语言模型索方法效果略优于_调参数的向量空间模型,与BM25{概率模型效果相?/div>
通过理论推导Q可以得出:语言模型索方法的排序公司W合概率模型的概率排序原理,cM向量I间模型Tf*IDF
机器学习排序
Z兴v较晚Q?/div>
1、其他模型和ҎQ考虑的因素较,人工q行公式拟合完全可行Q效果尚?/div>
2、机器学习需要大量训l数据,用户点击记录可以当做机器学习Ҏ训练数据的一个替代品
机器学习排序pȝ?个步?/strong>Q?/div>
人工标注训练数据Q用L击记录来模拟人工打分机制
文档特征抽取Q查询词在文档中的词频、查询词的IDF信息Q网入链数量,|页出链数量Q网PageRank||页URL长度Q查询词的Proximity|文档中多大的H口内可以出现所有查询词Q?/span>
学习分类函数
在实际搜索系l中采用机器学习模型
机器学习Ҏ
1、单文档Ҏ
对单独的一文档{换ؓ特征向量Q机器学习系l根据从训练数据中学习到的分cL回归函数Ҏ档打分,打分l果为最后得?/div>
在训l过E中Q当打分大于一定的阈|为相x档,否则Z相关文档?/div>
2、文档对Ҏ
通过训练Q对文档序关系是否合理q行判断Q判断两个文档的得分
使用SVM,BOOST,经|络Q都可以做ؓ学习Ҏ
~点Q只考虑了两个文档对的相对先后顺序,却没有考虑文档出现的搜索列表中的位|?/div>
不同的查询,相关文档数量差异很大Q对机器学习pȝ的效果造成评h困难
3、文档列表方?/strong>
每个查询对应的所有搜索结果列表作Z个训l实?/div>
通过搜烦l果排列l合的概率分布,训练评分函数
搜烦质量评h标准Q对于搜索引擎更加关注精率
_率:本次搜烦l果中相x档所?strong>本次搜烦q回的所有文?/strong>的比?/div>
招回率:本次搜烦l果中相x档占整个集合中所有相x?/strong>的比?/span>
P@10指标Q在搜烦l果排名最先前的头10个文档中有多大比例是相关?/div>
MAPQAP兼顾了排在前列的相关性和pȝ招架率,MAP多组查询的APq_?/div>

]]>q就是搜索引擎-W试4-索引压羃http://www.shnenglu.com/humanchao/archive/2013/11/04/204083.html胡满?/dc:creator>胡满?/author>Mon, 04 Nov 2013 04:56:00 GMThttp://www.shnenglu.com/humanchao/archive/2013/11/04/204083.htmlhttp://www.shnenglu.com/humanchao/comments/204083.htmlhttp://www.shnenglu.com/humanchao/archive/2013/11/04/204083.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/204083.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/204083.html词典压羃Q减词典的内存占用
好的压羃法Q压~率Q压~速度Q解压速度Q最重要Q?/div>
一元编?/strong>
10
210
3110
41110
511110
Elias Gamma:
x=2^e+d
e+1:一元编?/div>
d:二元~码
Elias Delta:
x=2^e+d
e+1:再?span style="font-size: medium; ">Elias Gamma~码一?/span>
d:二元~码
Golomb & Rice
因子1=(X-1)/bQ因?+1Q一元编?/div>
因子2=(X-1) mod bQ用二元编码,~码宽度在log(b)
Golomb: b=0.69*Avg(序列q_?
RiceQ?的整数次q,所有小于Avg中最接近Avg的数?/div>
变长压羃法SimpleX
Simple9: 32位比特位Q?个比特ؓ理数据存储区,28个比特压~数据存储区
Simple9?8位有9U表CŞ?/div>
Simple16: 28位有16U表CŞ式,q且通过非当完全固定长度,解决数据区有费位的情况
PForDeltaQ目前解压速度最快的一U倒排文g压羃法
1Q对待编码的q箋K个数|一般ؓ128Q,定10%的大数数|Ҏ70%数定夺取的比特宽度,定整个序列
2Q对原始数据遍历Q将大数攄到尾端,q{换成链表l构的序?/div>
3、将所有数字压~到队列?/div>
文档~号重排?/strong>
|页的文档ID+单词词频信息Q文档ID使用D-Gapq行~码
内容越怼的网,在编排文档号时越盔R
量数据文本聚类速度较慢Q将URL怼的网聚合在一P假设同一个网站的很多面表达的主题内Ҏq似?/div>
静态烦引裁?/strong>Q主动抛弃一部分不重要的信息Q烦引项Q来辑ֈ数据压羃的效?/div>
以单词ؓ中心的烦引裁?/strong>Q?/div>
判断单词与文档的怼性,每个词典中的单词Q其对应的倒排排列中至保留K个烦引项Q还要保留若q富余项?/div>
实验证明Q如果首先对所有烦引项的原始得分减d分最低烦引项的得分,再采取(对K个项q行折扣Q乘一个折扣因子,得出阈值aQ剩下的大于a保留Q方法进行裁剪,效果会大大提?/div>
因ؓ
索引得分分差相关不大,比较集中在某个区_所以减掉得分最低项
以文档ؓ中心的烦引裁?/strong>Q更为常?/div>
在徏立烦引之前进行数据预处理Q把与文档主题表达不相关的单词抛弃,如停用词


]]>q就是搜索引擎-W试3-搜烦引擎索引http://www.shnenglu.com/humanchao/archive/2013/09/16/203260.html胡满?/dc:creator>胡满?/author>Mon, 16 Sep 2013 06:01:00 GMThttp://www.shnenglu.com/humanchao/archive/2013/09/16/203260.htmlhttp://www.shnenglu.com/humanchao/comments/203260.htmlhttp://www.shnenglu.com/humanchao/archive/2013/09/16/203260.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/203260.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/203260.html单词词典
1、哈希加链表
2、树形结构:B树或者B+?/div>
倒排列表Q?/div>
单词+文档P词频Q出现的位置
文档号一般采用差值存储,以节省空?/div>
建立索引
1、两遍文档遍历法
W一遍,攉全局l计信息Q文档数NQ每个文档包含不同单词数MQ每个单词在多少个文档中出现q的信息DFQ通过q些信息可以计算出最l烦引的大小
W二遍,在徏立好的内存中建立索引Q从盘d文档q解析文档是最消耗时间的步骤
2、排序法
始终在内存中分配固定大小的空_用来存放词典信息和烦引中间结果,当分配空间消耗光的时候,把中间结果写入磁盘,清空内存数据q行下一轮烦?/div>
中间l果排序Q排序前Q文档IDQ单词IDQ单词频?/div>
排序后,单词IDQ主键)Q文档IDQ次键)
合ƈ中间l果Q把中间l果文gq行合ƈQ按单词ID写入最l结果文?/div>
3、归q法
在中间结果排序完成以后,把字怿息也写入文档中,q样全额使用内存
在徏立中间烦引中Q实际单词,文档~号Q词?/div>
合ƈӞ针对每个单词的倒排列表q行合ƈQŞ成最l的词典信息
动态烦?/strong>
倒排索引Q词典在内存里,倒排列表存储在磁盘文件中
临时索引Q词典和倒排列表都在内存中,当有新文档加入时Q放C时烦引中
删除文档列表Q当文档内容被更ҎQ系l认为旧文档被删除,增加一新文档
当用戯入查询时Q先从找倒排索引+临时索引Q去掉删除文档列表中的文档结?/div>
索引更新{略
1、完全重建策略:当新增文档达C定数量后Q新老烦引合q建,适合文档集合,L商业搜烦引擎一般也采用此方式来l护
2、再合ƈ{略Q?span style="font-size: medium; ">当新增文档达C定数量后Q新老烦引合q建,此时老烦引还在被使用Q由于老烦引有序,所以合q策略执行较快,但是读老烦引,建新索引Q也需要较多IO旉Q比较耗时
3、原地更新策略:在徏立老烦引时Q在老烦引倒排列表中留有一定的余地Q新加入索引直接q加到预留空_实验数据表明Q更新效率比再合q策略低
4、؜合策略:单词根据不同性质q行分类Q对其烦引采取不同的索引更新{略Q长倒排列表单词采取原地更新{略Q读写开销大)Q短倒排列表采取再合q策略(d开销不算太大Q?/span>

查询处理
1、一ơ一文档Q找到包含关键字的所有文档集合,一ơ计一个文档的得分Q依ơ计所有文档,计算后一般采用优先队列对分数q行排序
2、一ơ一单词Q一ơ计一个单词的得分Qƈ把结果以文档~写为关键|以hash表存储得分,计算所有文档得分后Q对hash表进行排?/span>
跌指针
在存储倒排索引文档~号Ӟ通常使用跌指针节省I间Q蟩跃指针分块用根号L为长度效果较?/div>
多字D늃?/strong>Q对|页的不同区域进行字D划分,q行索引
1、多索引方式Q对每个不同的字D分别徏立烦?/div>
2、倒排列表方式Q把字段信息存储到倒排列表中
3、扩展列表方式,把每个字D出现的位置记录C张列表里Q倒排索引扑ֈ单词后,判断单词的位|是否在某字D范围中
短语查询Q本质上是如何在索引中维护单词顺序关pL位置信息
1、位|信息烦引,通过位置信息判断两个词是否ؓ短语关系Q适合常规短语
2、双词烦引,首词+下词Q只对计代价高的短语徏立双词烦引,一般短语通过常规手段辑ֈ目的
3、短语烦引,~点无法所有短语都建好索引Q从用户查询日志或网|w挖掘短语,适合热门短语
4、؜合方法,用户查询->短语索引->双词索引->常规索引
分布式烦引:多台机器协作完成索引
1、按文档划分Q每台机器负责对某个文档子集建立索引
2、按单词划分Q将单词分别传送给服务?Q计结果后Q再传送给服务?Q一ơ一单词的查询处理方?/div>

]]>q就是搜索引擎-W试2http://www.shnenglu.com/humanchao/archive/2013/09/13/203210.html胡满?/dc:creator>胡满?/author>Fri, 13 Sep 2013 03:10:00 GMThttp://www.shnenglu.com/humanchao/archive/2013/09/13/203210.htmlhttp://www.shnenglu.com/humanchao/comments/203210.htmlhttp://www.shnenglu.com/humanchao/archive/2013/09/13/203210.html#Feedback0http://www.shnenglu.com/humanchao/comments/commentRss/203210.htmlhttp://www.shnenglu.com/humanchao/services/trackbacks/203210.html二、网l抓?/strong>

|页面划分?个部分:
1、已下蝲
2、已q期
3、待下蝲
4、可知网集合,未下载,但可索引
5、不可知|页集合Q暗|网?/div>
爬虫分三U类型:
1、批量型Q有明确的抓取范围和目标Q当辑ֈq个目标后停止抓?/div>
2、增量型Q不断抓取,抓取C后定期更?/div>
3、垂直型Q抓取特定行业网?/div>
优秀爬虫的特性:高性能、可扩展Q良好的q发性)、健壮性、友好性(遵守Robot协议Q?/div>
评h爬虫质量的标准:覆盖率,时新性,重要?/div>
 
抓取{略Q优先选择重要|页q行抓取
1、宽度优先遍历策略,虽然机械Q但是效果好Q隐含了一些网优UU的假设
2、非完全PageRank{略Q对已下载网集合,加上待抓取URLQŞ成网集合,q行PageRank计算Q将待抓取按得分q行排序
3、OCIP{略Q在UK面重要性计,待下载页面都分配相同的cashQ下载后把页面拥有的现金q_l包含的链接Q?/div>
待抓取URL则根据手头现金排序,优先下蝲最充裕|页。计速度快,适合实时计算Q效果略优于宽度优先
4、大站优先策略,哪个|站{等下蝲的页面最多,则优先下载这些链接,效果略优于宽度优?/span>

|页更新{略
1、历史参考策略,q去频繁更新的网,来也会频繁更新Q利用泊松过E?/span>
抓取{略应该忽略掉广告或D{非重要区域的频J变化,集中在主题内容的变化探测和徏?/span>
2、用户体验策略,Ҏ索结果排名靠前,更新以后Ҏ索质量(排名Q的影响较大的页面进行更?/span>
3、聚cLL略,先对|页q行聚类Q对同一cȝ采用相同的更新频率
聚类特征Q?/span>
静态特征,面的内容,囄数量Q页面大,链接深度QPageRank?/span>
动态特征,随着旉的变?Q静态特征的变化情况
聚类抽样{略效果好于前述两种Q但是对亿计|页q行聚类Q难度较?/span>

暗网抓取
暗|数据从数据库中挖掘出来Q百度的“阿拉?#8221;计划是解决此问?/span>
查询l合QGoogle提出富含信息查询模板技术,使用富含信息查询模板q行查询Q获取有效的|页l果
富含信息查询模板Q对于某固定的查询模板来_如果l模板内每个属性都赋|形成不同的查询组合,其返回内容差异较大,则这个查询模板ؓ富含信息查询模板

分布式爬?/span>
M分布式:URL服务器容易成为整个系l的瓉
对等分布式:没有URL服务器存在,每台抓取服务器的分工成ؓ问题Q对|址的主域名q行哈希计算Q之后对m服务器数量取模,把计后的模和抓取服务器号匹?/span>
一致性哈希算法:网站主域名q行哈希Q映到0~2^32之间某个数|抓取服务器负责这个环状序列的一个片D늚抓取Q抓取内容由上一个服务器q行循环转发


]]> ޹˾þۺ3d| ɫۺɫþû| 99ξþþŷƷվ| þþþþþĻ| Ʒþþþþۺձ| һaƬþëƬ | Ļþһ| ۺɫ77777þ| 󽶾þĻ| ھƷþۺ88| þþƷ۲ӰԺ| AVþþƷ| þþþþһƷ| 97rþþƷ99| þֹۺ޾Ʒ| һaƬþëƬ16| þۺϸþúݺ97ɫ| þþþһƷ| þþƷ۲ӰԺ| þ99Ʒþþþþö̬ͼ| һɫþ88ۺպƷ | þ޹ӰԺ| þ㽶߿ۿ99| ɫۺϾþ| ŷպƷþ| þþƷ99þþ㽶| þ99޸ۿҳ | þþƷһӰԺ | þþþòҰ¸߳| ٸþĻ | ͵͵þþþվ| ޹˾þۺһ77| Ʒþþþþ| һ㽶þֻ| þòӰ| 97þþƷˬ | һþaþþƷ| þþƷަvDz | ҹƷþþþþžŵӰ | ¾þƵ| þþþùƷ۲ӰԺ|