??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲激情综合,97电影在线看视频,久久五月天婷婷http://www.aygfsteel.com/haha0515/archive/2010/01/04/308200.html创意恒动?/dc:creator>创意恒动?/author>Mon, 04 Jan 2010 11:23:00 GMThttp://www.aygfsteel.com/haha0515/archive/2010/01/04/308200.htmlhttp://www.aygfsteel.com/haha0515/comments/308200.htmlhttp://www.aygfsteel.com/haha0515/archive/2010/01/04/308200.html#Feedback0http://www.aygfsteel.com/haha0515/comments/commentRss/308200.htmlhttp://www.aygfsteel.com/haha0515/services/trackbacks/308200.html自我理解java linkedlist插入数据的算法:
首先看一下,linkedlist插入源代码:

 1 public class LinkedList
 2     extends AbstractSequentialList
 3     implements List, Deque, Cloneable, java.io.Serializable
 4 {
 5     private transient Entry header = new Entry(nullnullnull);//初始化时先实例一个headerQ链表头
 6 
 7 
 8     /**
 9      * Constructs an empty list.//构造一个空链表
10      */
11     public LinkedList() {
12         header.next = header.previous = header; //把链表头和尾先连到自己(1Q?/span>
13         addBefore(e, header);Q?/span>2Q?br /> 14 
15     }
16 
17 .
18 
19  public boolean add(E e) {//插入链表Ҏ
20             return true;
21     }
22 .
23 
24 private static class Entry {//每个数据存放Q所要用到的静态内部类
25      E element;
26      Entry next;//后一个节?/span>
27      Entry previous;//接一个节?/span>
28 
29      Entry(E element, Entry next, Entry previous) {
30          this.element = element;
31          this.next = next;
32          this.previous = previous;
33      }
34 }
35 
36 
37 //插入操作Ҏ
38     private Entry addBefore(E e, Entry entry) {
39          Entry newEntry = new Entry(e, entry, entry.previous);Q?/span>3Q?br /> 40          newEntry.previous.next = newEntry;Q?/span>4Q?br /> 41          newEntry.next.previous = newEntry;Q?/span>5Q?br /> 42          size++;Q?/span>6Q?br /> 43          modCount++;
44          return newEntry;
45     }
46 
47 
48 /*其他Ҏ~~*/
49 
50 

以上部分是法所在:(一个简单的公式替换q程)

法步骤Q对应上面的~号Q:

Q?Q实例化一个header (Entry)

header.next = header

header.previous = header

当有W一条数据插入链表:

Q?Q实例化一?Entry newEntry Q以下简UE1Q?br />
E1.next = header

E1.previous = header.previous

E1.previous.next = header.previous.next = header.next

Q?Q由上面可得Q?/p>

newEntry.previous.next = newEntry;

作用Q?/p>

相当?E1.previous.next = header.next = E1

其实是Q让上一个节的next指向下一个节Ҏ?br />
所以header.next 的下一个节点就是E1

Q?QE1.next.previous = header.previous = E1Q这里用得y妙)

其实q个用法单从E1.next.previous= E1单这么看Q很直观因ؓE1的下一个节Ҏ据的上一个节点就应该是E1

从上面可知,E1.next == headerQؓ什么要把header.previous = E1呢?

其实包含着一个递归在里面?br />
如果再新增一个数?Entry E2 Q?br />
从上面的代码可以看出QE2的实例化q程是:(其实linkedlist每次新增一个数据,都通过header传?

Entry E2 = new Entry(data, header, header.previous);

注意代码部分的负倹{关键就是这里,实例化的时候,E2.previous = header.previous = E1
单得完成了负DE?br />
然后 E2.previous.next = E1.next = E2
E2.next.previous = header.previous = E2 .......(接着插入下一条数据,如此递归)

Q?Q记录链表位?br />

涉及C一个小的递归法?br />
linkedlist记录一。完毕。?/p>




]]>
Tokyocabinet数据存放探秘http://www.aygfsteel.com/haha0515/archive/2009/12/29/307601.html创意恒动?/dc:creator>创意恒动?/author>Tue, 29 Dec 2009 02:22:00 GMThttp://www.aygfsteel.com/haha0515/archive/2009/12/29/307601.htmlhttp://www.aygfsteel.com/haha0515/comments/307601.htmlhttp://www.aygfsteel.com/haha0515/archive/2009/12/29/307601.html#Feedback0http://www.aygfsteel.com/haha0515/comments/commentRss/307601.htmlhttp://www.aygfsteel.com/haha0515/services/trackbacks/307601.html 存储的时候发玎ͼtokyocabinet sync同步Ӟ先让数据存放在内存,然后Ҏ同步文g和内存的数据Q数据辑ֈ一直?br /> sync()q个tcҎ易用Q但不好控制?br /> E有不慎׃使持久化文g定w以几何数递增?br />
之前自己用mina框架做了一个btree的网l链接端口,起初内存一直飙升。弄了很久都不明白?br /> 开始以为是mina造成的,而且cpu占用率居高不下?br />
后来拆分试。发现单独mina的数据传输,内存q不高,非常低?br /> 但是tc的单独测试发玎ͼ写文件的cpu占用率特高,多线E写入的情况下,会有明显d?br /> 初步了解了jvm gc的算法,如果cpu占用率搞Qgc回收内存的能力会明显下降?br /> Z解决q一点,修改了一下网l端口的框架l构?br />
把数据接受端跟数据处理端分开Q?br /> 1.接受端可以接受多个socket多线E传输,而数据处理端锁定只接受从接收端的一个或不超q?个scoket传输数据?br /> 对tc的操作,单线E写入,感觉上比多线E处理流畅,特别在同步优化文仉一刅R?br /> 优化文gQ需要的cpu和内存都比较厉害?br /> 2.tc接受数据以后Q不要马上写文本。等接受一批(100-10000Q数据后Q再使用同步Ҏ?br /> 3.参照W?条,定期优化文gQ这样不至于文gq大。但是数据量增大Q文件虽然优化了Q写入速度不会怎么改变?br /> 4.优化同步文g后,特别在数据量在不断增大的情况下。不要以为没有回收内存,其实gc已经很努力回?长时间观察jprofiler的统计数据证明了q一?当你向tc取数据的时候,你会发现Q内存会逐递减?br />

l过一番调_用jprofiler试Q自己搭建的|络框架Q内存锁定在250m左右?br /> 可能到实际运行的时候,内存占用量会增加Q但是只会达C个相当的E_倹{?br /> 现用于公司的队列pȝQ内存总量不超q?00mQ偶超q是׃同步文g造成的,{数据稳定后Q内存会回到E_倹{以后再作优化,希望能把内存压制200m左右?br />
初学nioQ以此ؓ记?br />


]]>
tokyocabinet中HDB和BDB引擎的存储速度比较http://www.aygfsteel.com/haha0515/archive/2009/09/30/296950.html创意恒动?/dc:creator>创意恒动?/author>Tue, 29 Sep 2009 16:11:00 GMThttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296950.htmlhttp://www.aygfsteel.com/haha0515/comments/296950.htmlhttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296950.html#Feedback0http://www.aygfsteel.com/haha0515/comments/commentRss/296950.htmlhttp://www.aygfsteel.com/haha0515/services/trackbacks/296950.html
q日比较了一下TC中,HDB和BDB的速度Q挺有意思的?nbsp; 阅读全文

]]>
[导入]老师的告?/title><link>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296952.html</link><dc:creator>创意恒动?/dc:creator><author>创意恒动?/author><pubDate>Tue, 29 Sep 2009 16:11:00 GMT</pubDate><guid>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296952.html</guid><wfw:comment>http://www.aygfsteel.com/haha0515/comments/296952.html</wfw:comment><comments>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296952.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/haha0515/comments/commentRss/296952.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/haha0515/services/trackbacks/296952.html</trackback:ping><description><![CDATA[<p>一位语文老师的告?/p> <p><a title="一位老师的告? target="_blank">http://docs.google.com/present/view?id=ddpwddzp_10j7xb9dgj</a> </p> <p> </p> <p>以前有看q,不过回味下,挺搞W的</p> <p> </p> <p>============================</p> <span style="font-weight: bold; color: purple;"><span><br /> <br /> 文章来源:<a >http://henry2009.javaeye.com/blog/479384</a> </span></span> <img src ="http://www.aygfsteel.com/haha0515/aggbug/296952.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/haha0515/" target="_blank">创意恒动?/a> 2009-09-30 00:11 <a href="http://www.aygfsteel.com/haha0515/archive/2009/09/30/296952.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[导入]UJava开源Subversion客户?SVNKit 1.3.1发布http://www.aygfsteel.com/haha0515/archive/2009/09/30/296953.html创意恒动?/dc:creator>创意恒动?/author>Tue, 29 Sep 2009 16:11:00 GMThttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296953.htmlhttp://www.aygfsteel.com/haha0515/comments/296953.htmlhttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296953.html#Feedback0http://www.aygfsteel.com/haha0515/comments/commentRss/296953.htmlhttp://www.aygfsteel.com/haha0515/services/trackbacks/296953.htmlSVNKit是一个纯Java开源Subversion客户端库QSVNKit支持Java
API控制和操作Subversion工作拯和资源,支持httpQhttpsQsvn和svn+sshq接协议{?br />
Subversion is a leading and fast growing Open Source version control system.
          SVNKit brings Subversion
closer to the Java world! SVNKit is a pure Java toolkit
          - it implements all Subversion features and provides APIs to work with
          Subversion working copies, access and manipulate Subversion repositories
          - everything within your Java application.

通过SVNKitQ用户可以很Ҏ地操作控制Subversion?br /> SVNKit 1.3.1发布Q可以在http://svnkit.com/ 上下?br />
下蝲地址Q?br /> http://svnkit.com/download.php

svnkit文档地址Q?br /> http://svnkit.com/documentation.html

Q有了这个东东,׃用在linux下安装这个库Q那个c~译包了~~~呵呵Q?/em>


文章来源:http://henry2009.javaeye.com/blog/474715

]]>
[导入]对mencache和tokyocabinet~存的一点点遐想http://www.aygfsteel.com/haha0515/archive/2009/09/30/296954.html创意恒动?/dc:creator>创意恒动?/author>Tue, 29 Sep 2009 16:11:00 GMThttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296954.htmlhttp://www.aygfsteel.com/haha0515/comments/296954.htmlhttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296954.html#Feedback0http://www.aygfsteel.com/haha0515/comments/commentRss/296954.htmlhttp://www.aygfsteel.com/haha0515/services/trackbacks/296954.html阅读全文

]]>
sphinx tokyocabinet 轻量U搜索框Ӟ2.0Q?/title><link>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296955.html</link><dc:creator>创意恒动?/dc:creator><author>创意恒动?/author><pubDate>Tue, 29 Sep 2009 16:11:00 GMT</pubDate><guid>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296955.html</guid><wfw:comment>http://www.aygfsteel.com/haha0515/comments/296955.html</wfw:comment><comments>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296955.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/haha0515/comments/commentRss/296955.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/haha0515/services/trackbacks/296955.html</trackback:ping><description><![CDATA[     摘要:   <a href='http://www.aygfsteel.com/haha0515/archive/2009/09/30/296955.html'>阅读全文</a><img src ="http://www.aygfsteel.com/haha0515/aggbug/296955.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/haha0515/" target="_blank">创意恒动?/a> 2009-09-30 00:11 <a href="http://www.aygfsteel.com/haha0515/archive/2009/09/30/296955.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>sphinx tokyocabinet 轻量U搜索框Ӟ1.0Q?/title><link>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296956.html</link><dc:creator>创意恒动?/dc:creator><author>创意恒动?/author><pubDate>Tue, 29 Sep 2009 16:11:00 GMT</pubDate><guid>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296956.html</guid><wfw:comment>http://www.aygfsteel.com/haha0515/comments/296956.html</wfw:comment><comments>http://www.aygfsteel.com/haha0515/archive/2009/09/30/296956.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/haha0515/comments/commentRss/296956.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/haha0515/services/trackbacks/296956.html</trackback:ping><description><![CDATA[     摘要: Sphinx QSphinx是一个基于SQL的全文检索引擎,可以l合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本w更专业的搜索功能,使得应用E序更容易实C业化的全文检索。Sphinx特别Z些脚本语a设计搜烦API接口Q如PHP,Python,Perl,Ruby{,同时?MySQL也设计了一个存储引擎插件?nbsp; <a href='http://www.aygfsteel.com/haha0515/archive/2009/09/30/296956.html'>阅读全文</a><img src ="http://www.aygfsteel.com/haha0515/aggbug/296956.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/haha0515/" target="_blank">创意恒动?/a> 2009-09-30 00:11 <a href="http://www.aygfsteel.com/haha0515/archive/2009/09/30/296956.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>libbz2.a,libz.soDtokyocabinet makep|问题解决Ҏhttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296957.html创意恒动?/dc:creator>创意恒动?/author>Tue, 29 Sep 2009 16:11:00 GMThttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296957.htmlhttp://www.aygfsteel.com/haha0515/comments/296957.htmlhttp://www.aygfsteel.com/haha0515/archive/2009/09/30/296957.html#Feedback1http://www.aygfsteel.com/haha0515/comments/commentRss/296957.htmlhttp://www.aygfsteel.com/haha0515/services/trackbacks/296957.html也许常规是对Radhat而言的,我用5.3企业版的radhat不会出现q种ȝ事?nbsp; 阅读全文

]]>
վ֩ģ壺 ƽ| ƽԭ| | ڳ| | | | | | ¡| «Ϫ| ̨| ʡ| °Ͷ| ī| | | | | | Ͽ| ɽ| ӱʡ| | ̷| Ϋ| ˫| | | | | ŷ| ˳| ں| | | | | | ¦| ߷|