<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feeds.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feeds.feedsky.com/csdn.net/wumingabc" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feeds.feedsky.com/csdn.net/wumingabc" type="application/rss+xml"></fs:self_link><lastBuildDate>Mon, 23 Nov 2009 15:35:00 GMT</lastBuildDate><title>wumingabc的专栏</title><description>---------------------------我的地盘你来踩</description><link>http://blog.csdn.net/blogrss.aspx?username=wumingabc</link><item><title>如何配置Tuxedo ubbconfig——超时</title><link>http://blog.csdn.net/wumingabc/archive/2009/11/23/4859891.aspx</link><description>&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;【LDBAL参数特性】&lt;br /&gt;·         当在RESOURCES小节中将LDBAL参数设为Y时，负载均衡被激活&lt;br /&gt;·         负载因子被添加到服务器的总负载上&lt;br /&gt;·         负载是相对于其他服务的&lt;br /&gt; 1.1      通过服务优先级控制数据流向&lt;br /&gt;&lt;br /&gt;通过PRIO参数可以为服务设置优先级，从而可以控制对应用中的数据流向施加很大的影响。例如，服务1提供A、B和C三个服务。服务A和B的优先级为50，服务C的优先级是70。对服务C的请求总是比对服务A和B的请求先出队列，对服务A和B的请求出队列的机会均等。系统以FIFO顺序从队列中取出每第十个请求，以防止一个消息在队列中无限等待。&lt;br /&gt;注意: 也可以通过tpsprio()调用动态改变优先级。&lt;br /&gt;&lt;br /&gt;【PRIO参数特性】&lt;br /&gt;·         该参数绝顶服务在服务器队列上的优先级&lt;br /&gt;·         优先级最高最先被处理&lt;br /&gt;·         每第十个请求通过FIFO顺序被从队列中取出&lt;img src=&quot;http://www1.feedsky.com/t1/300116085/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/11/23/4859891.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116085/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116085/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 23 Nov 2009 23:35:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/11/23/4859891.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/11/23/4859891.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116085/1143240</fs:itemid></item><item><title>javascript字符串连接性能的问题</title><link>http://blog.csdn.net/wumingabc/archive/2009/07/31/4397276.aspx</link><description>&lt;br /&gt;  今天看了javascript高级程序设计,其中注意到字符串连接性能问题的谈论.感觉以前自己写的程序只讲简单但是没有注意到性能问题.其中,在javascript中用的最多的字符串连接就有最大的问题.&lt;br /&gt;    例如:&lt;br /&gt;            var str = &quot;hello&quot;;&lt;br /&gt;           str += &quot;world&quot;;&lt;br /&gt;    大家可能使用最普遍的就是这种了,实际上,这段代码在幕后执行的步骤如下:&lt;br /&gt;     1, 创建存储&quot;hello&quot;的字符串.&lt;br /&gt;     2. 创建存储&quot;world&quot;的字符串.&lt;br /&gt;     3.创建存储连接结果的字符串.&lt;br /&gt;     4. 把str的当前内容复制到结果中.&lt;br /&gt;     5.把&quot;world&quot;复制的结果中.&lt;br /&gt;     6.更新str,使它指向结果.&lt;br /&gt;     大家不难看出:每次完成字符串连接都会执行步骤2到6,使得这种操作非常消耗资源.如果重复这一过程几百次,甚至几千次,就会造成性能问题.所以,以后一定要注意,别做毫无意义的消耗.&lt;img src=&quot;http://www1.feedsky.com/t1/300116086/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/07/31/4397276.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116086/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116086/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Fri, 31 Jul 2009 14:24:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/07/31/4397276.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/07/31/4397276.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116086/1143240</fs:itemid></item><item><title>jquery技巧总结-jQuery对象,集合,方法扩展,事件处理,特效,解决冲突</title><link>http://blog.csdn.net/wumingabc/archive/2009/07/27/4383741.aspx</link><description>&lt;br /&gt;1、关于页面元素的引用&lt;br /&gt;通过jquery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法，且返回的对象为jquery对象（集合对象），不能直接调用dom定义的方法。&lt;br /&gt;2、jQuery对象与dom对象的转换&lt;br /&gt;只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的，调用方法时要注意操作的是dom对象还是jquery对象。&lt;br /&gt;普通的dom对象一般可以通过$()转换成jquery对象。&lt;br /&gt;如：$(document.getElementById(&quot;msg&quot;))则为jquery对象，可以使用jquery的方法。&lt;br /&gt;由于jquery对象本身是一个集合。所以如果jquery对象要转换为dom对象则必须取出其中的某一项，一般可通过索引取出。&lt;br /&gt;如：$(&quot;#msg&quot;)[0]，$(&quot;div&quot;).eq(1)[0]，$(&quot;div&quot;).get()[1]，$(&quot;td&quot;)[5]这些都是dom对象，可以使用dom中的方法，但不能再使用Jquery的方法。&lt;img src=&quot;http://www1.feedsky.com/t1/300116087/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/07/27/4383741.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116087/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116087/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 27 Jul 2009 13:36:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/07/27/4383741.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/07/27/4383741.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116087/1143240</fs:itemid></item><item><title>单例使用</title><link>http://blog.csdn.net/wumingabc/archive/2009/07/17/4357731.aspx</link><description>&lt;br /&gt;一、单例对象的初始化同步 &lt;br /&gt;对于初始化的同步，可以通过如下代码所采用的方式解决。 &lt;br /&gt;  public class GlobalConfig { &lt;br /&gt;    private static GlobalConfig instance = null; &lt;br /&gt;    private Vector properties = null; &lt;br /&gt;    private GlobalConfig() { &lt;br /&gt;      //Load configuration information from DB or file &lt;br /&gt;      //Set values for properties &lt;br /&gt;    } &lt;br /&gt;    private static synchronized void syncInit() { &lt;br /&gt;      if (instance == null) { &lt;br /&gt;        instance = new GlobalConfig(); &lt;br /&gt;      } &lt;br /&gt;    }&lt;img src=&quot;http://www1.feedsky.com/t1/300116088/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/07/17/4357731.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116088/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116088/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Fri, 17 Jul 2009 17:01:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/07/17/4357731.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/07/17/4357731.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116088/1143240</fs:itemid></item><item><title>常用正则表达式收集</title><link>http://blog.csdn.net/wumingabc/archive/2009/06/02/4234807.aspx</link><description>匹配中文字符的正则表达式： [\u4e00-\u9fa5]匹配双字节字符(包括汉字在内)：[^\x00-\xff]应用：计算字符串的长度（一个双字节字符长度计2，ASCII字符计1）String.prototype.len=function(){returnthis.replace([^\x00-\xff]/g,&quot;aa&quot;).length;}匹配空行的正则表达式：\n[\s| ]*\r匹配HTML标记的正则表达式：/.*|/匹配首尾空格的正则表达式：(^\s*)|(\s*$)应用：javascript中没有像vbscript那样的trim函数，我们就可以利用这个表达式来实现，如下：String.prototype.trim =function(){    returnthis.replace(/(^\s*)|(\s*$)/&lt;img src=&quot;http://www1.feedsky.com/t1/300116089/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/06/02/4234807.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116089/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116089/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 02 Jun 2009 09:17:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/06/02/4234807.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/06/02/4234807.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116089/1143240</fs:itemid></item><item><title>hibernate调用存储过程</title><link>http://blog.csdn.net/wumingabc/archive/2009/05/19/4202007.aspx</link><description>&lt;br /&gt;一． 建表与初始化数据&lt;br /&gt;  在mysql的test数据库中建立一张新表：tbl_user,建表语句如下：&lt;br /&gt;  DROP TABLE IF EXISTS `user`;&lt;br /&gt;CREATE TABLE `tbl_user` (&lt;br /&gt;   `userid` varchar(50) NOT NULL,&lt;br /&gt;   `name` varchar(50) default '',&lt;br /&gt;   `blog` varchar(50) default '',&lt;br /&gt;   PRIMARY KEY  (`userid`)&lt;br /&gt;) ENGINE=InnoDB DEFAULT CHARSET=gb2312;&lt;br /&gt;  建表成功后，在该表中任意插入几条数据。&lt;br /&gt;二． 建立存储过程&lt;br /&gt;为测试hibernate3.x中存储过程的调用，我们在user表中建立getUserList、createUser、updateUser和deleteUser这四个存储过程，在mysql中建立存储过程的语句如下：&lt;br /&gt;1. 获得用户信息列表的存储过程&lt;img src=&quot;http://www1.feedsky.com/t1/300116090/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/05/19/4202007.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116090/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116090/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 19 May 2009 18:54:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/05/19/4202007.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/05/19/4202007.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116090/1143240</fs:itemid></item><item><title>Spring中事务的传播属性详解</title><link>http://blog.csdn.net/wumingabc/archive/2009/05/17/4194362.aspx</link><description>Spring事务的传播属性详解PROPAGATION_REQUIRED：支持当前事务，如果当前没有事务，就新建一个事务。这是最常见的选择。 PROPAGATION_SUPPORTS：支持当前事务，如果当前没有事务，就以非事务方式执行。 PROPAGATION_MANDATORY：支持当前事务，如果当前没有事务，就抛出异常。 PROPAGATION_REQUIRES_NEW：新建事务，如果当前存在事务，把当前事务挂起。 PROPAGATION_NOT_SUPPORTED：以非事务方式执行操作，如果当前存在事务，就把当前事务挂起。 PROPAGATION_NEVER：以非事务方式执行，如果当前存在事务，则抛出异常。 PROPAGATION_NESTED：支持当前事务，新增Savepoint点，与当前事务同步提交或回滚。&lt;img src=&quot;http://www1.feedsky.com/t1/300116091/wumingabc/csdn.net/s.gif?r=http://blog.csdn.net/wumingabc/archive/2009/05/17/4194362.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116091/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116091/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Sun, 17 May 2009 10:09:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/05/17/4194362.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/05/17/4194362.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116091/1143240</fs:itemid></item><item><title>JAVA死锁解密</title><link>http://blog.csdn.net/wumingabc/archive/2009/05/05/4152896.aspx</link><description>&lt;br /&gt;一般来说，每一种使用线程的语言中都存在线程死锁问题，Java开发中遇到线程死锁问题也是非常普遍。笔者在程序开发中就常常碰到死锁的问题，并经常束手无策。本文分享笔者在JAVA开发中对线程死锁的一些看法。 &lt;br /&gt;    一. 什么是线程 &lt;br /&gt;    在谈到线程死锁的时候，我们首先必须了解什么是Java线程。一个程序的进程会包含多个线程，一个线程就是运行在一个进程中的一个逻辑流。多线程允许在程序中并发执行多个指令流，每个指令流都称为一个线程，彼此间互相独立。 &lt;br /&gt;    线程又称为轻量级进程，它和进程一样拥有独立的执行控制，由操作系统负责调度，区别在于线程没有独立的存储空间，而是和所属进程中的其它线程共享一个存储空间，这使得线程间的通信较进程简单。笔者的经验是编写多线程序，必须注意每个线程是否干扰了其他线程的工作。每个进程开始生命周期时都是单一线程，称为“主线程”，在某一时刻主线程会创建一个对等线程。如果主线程停滞则系统就会切换到其对等线程。和一个进程相关的线程此时会组成一个对等线程池，一个线程可以杀死其任意对等线程。 &lt;br /&gt;&lt;br /&gt;因为每个线&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116092/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116092/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 05 May 2009 21:22:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/05/05/4152896.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/05/05/4152896.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116092/1143240</fs:itemid></item><item><title>Ext用户访问超时，生成EXCEL文档，JS文件管理使用方法</title><link>http://blog.csdn.net/wumingabc/archive/2009/02/17/3900401.aspx</link><description>&lt;br /&gt;用户访问超时&lt;br /&gt;解决两种情况下的用户访问超时。&lt;br /&gt;a）普通http请求的session超时。&lt;br /&gt;b）异步http请求的session超时，使用ext后大部分的界面刷新都是异步的ajax请求。&lt;br /&gt;&lt;br /&gt;不管是那种类型的http请求总是可以由一个过滤器来捕捉。&lt;br /&gt;分类：普通http请求的header参数中没有x-requested-with:XMLHttpRequest头信息，而异步的有。&lt;br /&gt;其实对于常见的ajax框架，header中还有标示自己身份的header信息。&lt;br /&gt;&lt;br /&gt;对于普通的http请求，发现session超时后直接重定向到一个超时页面，显示访问超时。&lt;br /&gt;对于异步http请求，发现session超时后则向请求的response中写入特定的超时头信息，客户端ajax对象检测&lt;br /&gt;头信息，发现有超时状态标志后调用显示超时信息的javascript方法，提示用户访问超时。&lt;br /&gt;&lt;br /&gt;服务器端session超时后在过滤器中为response添加新的头信息，标记该请求超时：if(&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116093/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116093/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 17 Feb 2009 14:32:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/02/17/3900401.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/02/17/3900401.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116093/1143240</fs:itemid></item><item><title>算法题</title><link>http://blog.csdn.net/wumingabc/archive/2009/02/11/3876398.aspx</link><description>&lt;br /&gt;假设有这样一种字符串，它们的长度不大于 26 ，而且若一个这样的字符串其长度为 m ，则这个字符串必定由 a, b, c ... z 中的前 m 个字母构成，同时我们保证每个字母出现且仅出现一次。比方说某个字符串长度为 5 ，那么它一定是由 a, b, c, d, e 这 5 个字母构成，不会多一个也不会少一个。嗯嗯，这样一来，一旦长度确定，这个字符串中有哪些字母也就确定了，唯一的区别就是这些字母的前后顺序而已。 &lt;br /&gt;现在我们用一个由大写字母 A 和 B 构成的序列来描述这类字符串里各个字母的前后顺序： &lt;br /&gt;如果字母 b 在字母 a 的后面，那么序列的第一个字母就是 A （After），否则序列的第一个字母就是 B （Before）； &lt;br /&gt;如果字母 c 在字母 b 的后面，那么序列的第二个字母就是 A ，否则就是 B； &lt;br /&gt;如果字母 d 在字母 c 的后面，那么 …… 不用多说了吧？直到这个字符串的结束。 &lt;br /&gt;这规则甚是简单，不过有个问题就是同一个 AB 序列，可能有多个字符串都与之相符，比方说序列“ABA”，就有“acdb”、“ca&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/wumingabc/300116094/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/wumingabc/300116094/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 11 Feb 2009 10:46:00 +0800</pubDate><author>wumingabc</author><guid isPermaLink="false">http://blog.csdn.net/wumingabc/archive/2009/02/11/3876398.aspx</guid><dc:creator>wumingabc</dc:creator><fs:srclink>http://blog.csdn.net/wumingabc/archive/2009/02/11/3876398.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/wumingabc/feed.aspx</fs:srcfeed><fs:itemid>csdn.net/wumingabc/~1143252/300116094/1143240</fs:itemid></item></channel></rss>