﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-ChenGen</title><link>http://www.blogjava.net/ChenGen/</link><description>一切归零，重新开始</description><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 18:57:16 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 18:57:16 GMT</pubDate><ttl>60</ttl><item><title>博客重新开张</title><link>http://www.blogjava.net/ChenGen/archive/2009/07/17/287073.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Fri, 17 Jul 2009 00:59:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2009/07/17/287073.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/287073.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2009/07/17/287073.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/287073.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/287073.html</trackback:ping><description><![CDATA[记得上次最后一篇博客是在大四的时候写的，离现在已经两年多了，现在博客已经是荒草丛生、灰尘扑扑了。IT人应该养成写博文的习惯，一来总结经验，二来分享心的，在交流中升华。所以在这里郑重宣布，博客重新开张，一定坚持写下去！<br />
<br />
<img src ="http://www.blogjava.net/ChenGen/aggbug/287073.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2009-07-17 08:59 <a href="http://www.blogjava.net/ChenGen/archive/2009/07/17/287073.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>凡事豫则立，不豫则废</title><link>http://www.blogjava.net/ChenGen/archive/2007/04/25/113384.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Wed, 25 Apr 2007 00:32:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2007/04/25/113384.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/113384.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2007/04/25/113384.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/113384.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/113384.html</trackback:ping><description><![CDATA[凡事豫则立，不豫则废；言前定，则不跲(jia)；事前定，则不困；行前定，则不疚；道前定，则不穷。——《礼记&#183;中庸》.<br>
<p>◎白话解：豫者预也，任何事情，事前有准备就可以成功，没有准备就要失败；说话先有准备，就不会词穷理屈站不住脚；做事先有准备，就不会遇到困难挫折；行事前计划先有定夺，就不会发生错误后悔的事；做人的道理能够事先决定妥当，就不会行不通了。
</p>
<p>凡事豫则立，不豫则废就是教人怎样做到一个&#8220;豫&#8221;字的。 &#8220;豫&#8221;就是预先做好准备，凡是处理任何事情，预先做好各种准备就能获得成功，不做准备就会失败，古人曾用四个&#8220;前定&#8221;来阐述这个&#8220;豫&#8221;字。 </p>
<p>凡是发表意见，在重要场合讲话，要先准备好讲好讲什么，怎么讲。古人说这叫&#8220;言前定则不跲&#8221;（跲读jia,窒碍）。</p>
<p>凡是要采取某种行动，大至行军作战，小到出门旅行，都要预先考虑这一行动中将会遇上什么情况，做好相应的准备。这叫作&#8220;行前定则不疚&#8221;（疚，读jiu ,出毛病）。 </p>
<p>至于要建立一种学说，阐明一个道理，那就更要花大力气做好周密准备了，论点要正确，论据要充分，论证要符合逻辑，才能使人无可辩驳。这叫做&#8220;道前定则不穷&#8221;（穷，尽、受困）。 </p>
<p>&#8220;凡是豫则立，不豫则废&#8221;，强调事先的准备，至今有指导意义。&#8220;有备无患&#8221;也是这个意思。
</p>
<br>
<br><img src ="http://www.blogjava.net/ChenGen/aggbug/113384.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2007-04-25 08:32 <a href="http://www.blogjava.net/ChenGen/archive/2007/04/25/113384.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Mysql用户管理小结</title><link>http://www.blogjava.net/ChenGen/archive/2006/10/31/78258.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Tue, 31 Oct 2006 05:46:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/10/31/78258.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/78258.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/10/31/78258.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/78258.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/78258.html</trackback:ping><description><![CDATA[最简单也是最常用创建一个用户的SQL:<br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">grant</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">all</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">privileges</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">on</span><span style="COLOR: #000000"> DBName.</span><span style="COLOR: #808080">*</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">to</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">userName</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">@</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">%</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"> identified </span><span style="COLOR: #0000ff">by</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">password</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">with</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">grant</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">option</span><span style="COLOR: #000000">;</span></div><img src ="http://www.blogjava.net/ChenGen/aggbug/78258.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-10-31 13:46 <a href="http://www.blogjava.net/ChenGen/archive/2006/10/31/78258.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>servlet中连接数据库的一个疑问</title><link>http://www.blogjava.net/ChenGen/archive/2006/10/31/78235.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Tue, 31 Oct 2006 03:16:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/10/31/78235.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/78235.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/10/31/78235.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/78235.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/78235.html</trackback:ping><description><![CDATA[今天用servlet写了一个用户登录的验证程序,在验证程序中需要查询数据库判断密码是否正确.我像写JAVA应用程序一样用下面的语句来注册数据库驱动程序: <br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">System.setProperty(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">jdbc.drivers</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">com.mysql.jdbc.Driver</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);</span></div><br />但是在运行的时候,却总是说找不到合适的数据库驱动程序.然后我换了另外一种方式来注册数据库驱动程序: <br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">Class.forName(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">com.mysql.jdbc.Driver</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);</span></div><br />结果却可以正常连接数据库.为什么呢?<br /><img src ="http://www.blogjava.net/ChenGen/aggbug/78235.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-10-31 11:16 <a href="http://www.blogjava.net/ChenGen/archive/2006/10/31/78235.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>杨辉三角</title><link>http://www.blogjava.net/ChenGen/archive/2006/10/05/73442.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Wed, 04 Oct 2006 16:58:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/10/05/73442.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/73442.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/10/05/73442.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/73442.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/73442.html</trackback:ping><description><![CDATA[   前段时间复习了01背包问题的算法，受它的启发，我采用同样的数据结构来解决杨辉三角的问题。<br /><br />   下面是这种数据结构的图示：<br /><img height="467" alt="Yanghui.JPG" src="http://www.blogjava.net/images/blogjava_net/chengen/Yanghui.JPG" width="689" border="0" /><br />   数组 r 用来存储杨辉三角每一行的数据，那么 r 的大小就是 (n+1)n/2 ，其中 n 是杨辉三角的行数。数组 f 用来存储每一行开始位置的下标，如第一行从位置1开始，所以 f[1]=1；第四行从位置7开始，所以 f[4]=7。<br /><br />   完整的程序如下(环境turbo c 2.0)：<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">#include </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">stdio.h</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />#include </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">stdlib.h</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Yanghui(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">)<br /><img id="Codehighlighter1_78_141_Open_Image" onclick="this.style.display='none'; Codehighlighter1_78_141_Open_Text.style.display='none'; Codehighlighter1_78_141_Closed_Image.style.display='inline'; Codehighlighter1_78_141_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_78_141_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_78_141_Closed_Text.style.display='none'; Codehighlighter1_78_141_Open_Image.style.display='inline'; Codehighlighter1_78_141_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_78_141_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_78_141_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">intput n: </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    scanf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%d</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">n);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    Yanghui(n);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Yanghui(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n)<br /><img id="Codehighlighter1_164_630_Open_Image" onclick="this.style.display='none'; Codehighlighter1_164_630_Open_Text.style.display='none'; Codehighlighter1_164_630_Closed_Image.style.display='inline'; Codehighlighter1_164_630_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_164_630_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_164_630_Closed_Text.style.display='none'; Codehighlighter1_164_630_Open_Image.style.display='inline'; Codehighlighter1_164_630_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_164_630_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_164_630_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r,</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">f;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i,j,k,next;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    r</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">)malloc(sizeof(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">)</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">( n</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(n</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000"> ));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    f</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">)malloc(sizeof(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">)</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">( n</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> ));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    r[</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    f[</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    f[</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    next</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;<br /><img id="Codehighlighter1_335_483_Open_Image" onclick="this.style.display='none'; Codehighlighter1_335_483_Open_Text.style.display='none'; Codehighlighter1_335_483_Closed_Image.style.display='inline'; Codehighlighter1_335_483_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_335_483_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_335_483_Closed_Text.style.display='none'; Codehighlighter1_335_483_Open_Image.style.display='inline'; Codehighlighter1_335_483_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(i</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">n)</span><span id="Codehighlighter1_335_483_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_335_483_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        r[next</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">每行第一个位置是1</span><span style="COLOR: #008000"><br /><img id="Codehighlighter1_391_421_Open_Image" onclick="this.style.display='none'; Codehighlighter1_391_421_Open_Text.style.display='none'; Codehighlighter1_391_421_Closed_Image.style.display='inline'; Codehighlighter1_391_421_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_391_421_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_391_421_Closed_Text.style.display='none'; Codehighlighter1_391_421_Open_Image.style.display='inline'; Codehighlighter1_391_421_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(j</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">f[i</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">];j</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">f[i]</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;j</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)</span><span id="Codehighlighter1_391_421_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_391_421_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            r[next</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">r[j]</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">r[j</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        r[next</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">每行最后一个位置是1</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        f[i</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">next;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">下一行的开始位置</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">输出</span><span style="COLOR: #008000"><br /><img id="Codehighlighter1_509_627_Open_Image" onclick="this.style.display='none'; Codehighlighter1_509_627_Open_Text.style.display='none'; Codehighlighter1_509_627_Closed_Image.style.display='inline'; Codehighlighter1_509_627_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_509_627_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_509_627_Closed_Text.style.display='none'; Codehighlighter1_509_627_Open_Image.style.display='inline'; Codehighlighter1_509_627_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">n;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)</span><span id="Codehighlighter1_509_627_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_509_627_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(j</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;j</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">n</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">i;j</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">   </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img id="Codehighlighter1_577_607_Open_Image" onclick="this.style.display='none'; Codehighlighter1_577_607_Open_Text.style.display='none'; Codehighlighter1_577_607_Closed_Image.style.display='inline'; Codehighlighter1_577_607_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_577_607_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_577_607_Closed_Text.style.display='none'; Codehighlighter1_577_607_Open_Image.style.display='inline'; Codehighlighter1_577_607_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(j</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">f[i];j</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">f[i</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">];j</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)</span><span id="Codehighlighter1_577_607_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_577_607_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%2d   </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,r[j]);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000">&#x1A;</span></div><img src ="http://www.blogjava.net/ChenGen/aggbug/73442.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-10-05 00:58 <a href="http://www.blogjava.net/ChenGen/archive/2006/10/05/73442.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAVA类继承过程中其成员的一些问题</title><link>http://www.blogjava.net/ChenGen/archive/2006/09/29/72773.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Fri, 29 Sep 2006 05:41:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/09/29/72773.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/72773.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/09/29/72773.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/72773.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/72773.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: JAVA类继承过程中其成员的一些问题   一、构造函数的问题：   构造函数不能继承。子类的构造函数可以通过super关键字显式调用父类中的构造函数。如果子类中的构造函数没有显式调用父类中的构造函数，编译器就会自动在子类的构造函数中调用父类中参数为空的构造函数。于是，当父类中没有参数为空的构造函数，而子类中又没有显示调用父类的其他构造函数，编译时就会报错。这一点需要特别注意。当父类中没有定义任何构...&nbsp;&nbsp;<a href='http://www.blogjava.net/ChenGen/archive/2006/09/29/72773.html'>阅读全文</a><img src ="http://www.blogjava.net/ChenGen/aggbug/72773.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-09-29 13:41 <a href="http://www.blogjava.net/ChenGen/archive/2006/09/29/72773.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>软件工程箴言</title><link>http://www.blogjava.net/ChenGen/archive/2006/09/28/72656.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Thu, 28 Sep 2006 10:59:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/09/28/72656.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/72656.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/09/28/72656.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/72656.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/72656.html</trackback:ping><description><![CDATA[当软件开发完成之后,应该尽快结束合同.否则,面对客户提出的各种问题,不断对软件进行修改,企业就会失去信用,企业资金运转会出现问题,而进入无休止的循环中. 面对用户提出的文体分下面三个方面采取不通的措施: <br />   对于软件存在的错误,一定要老老实实修改; <br />   对于"锦上添花"而不增加工作量的问题也应该尽量满足; <br />   对于新增功能的要求决不答应,可以等下一个合同在修改;<img src ="http://www.blogjava.net/ChenGen/aggbug/72656.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-09-28 18:59 <a href="http://www.blogjava.net/ChenGen/archive/2006/09/28/72656.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>真正懂系统和技术的人不适宜作前期的需求分析工作</title><link>http://www.blogjava.net/ChenGen/archive/2006/09/28/72655.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Thu, 28 Sep 2006 10:49:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/09/28/72655.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/72655.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/09/28/72655.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/72655.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/72655.html</trackback:ping><description><![CDATA[   真正懂系统和技术的人不适宜作前期的需求分析工作. <br /><br />   真正懂系统和技术的人往往从能否实现的角度去考虑问题,这种考虑文体的方法往往束缚了他的思维. <br />   <br />   "车到山前必有路"的思维方法可以弥补这种不足~<img src ="http://www.blogjava.net/ChenGen/aggbug/72655.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-09-28 18:49 <a href="http://www.blogjava.net/ChenGen/archive/2006/09/28/72655.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>复习动态规划算法——01背包问题</title><link>http://www.blogjava.net/ChenGen/archive/2006/09/28/72533.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Thu, 28 Sep 2006 04:52:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/09/28/72533.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/72533.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/09/28/72533.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/72533.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/72533.html</trackback:ping><description><![CDATA[
		<p>   今天复习了动态规划算法。01背包问题是一个典型的动态规划问题。算法的证明过程比较复杂，但是计算过程并不难理解。<br />   <br />   假设有这样的序列 n＝3 M=6 (物体数量为3，背包能背的重量为6)<br />   wi   2   3   4 (物体重量)<br />   pi    1   2   5 (物体的价值)<br /><br />   初始化：Si={(P)}(待完成)<br /><br />代码:</p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">#include </span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">stdio.h</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />#include </span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">stdlib.h</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />#define MAXSIZE </span>
				<span style="COLOR: #000000">1000</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">void</span>
				<span style="COLOR: #000000"> DKNAP(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">void</span>
				<span style="COLOR: #000000"> PARTS(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">, </span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">void</span>
				<span style="COLOR: #000000"> main(</span>
				<span style="COLOR: #0000ff">void</span>
				<span style="COLOR: #000000">)<br /><img id="Codehighlighter1_157_476_Open_Image" onclick="this.style.display='none'; Codehighlighter1_157_476_Open_Text.style.display='none'; Codehighlighter1_157_476_Closed_Image.style.display='inline'; Codehighlighter1_157_476_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_157_476_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_157_476_Closed_Text.style.display='none'; Codehighlighter1_157_476_Open_Image.style.display='inline'; Codehighlighter1_157_476_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_157_476_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_157_476_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i,j,n,</span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">w,</span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">p,M;<br /><img id="Codehighlighter1_220_279_Open_Image" onclick="this.style.display='none'; Codehighlighter1_220_279_Open_Text.style.display='none'; Codehighlighter1_220_279_Closed_Image.style.display='inline'; Codehighlighter1_220_279_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_220_279_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_220_279_Closed_Text.style.display='none'; Codehighlighter1_220_279_Open_Image.style.display='inline'; Codehighlighter1_220_279_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">if</span>
						<span style="COLOR: #000000">(freopen(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">input.txt</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">r</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,stdin)</span>
						<span style="COLOR: #000000">==</span>
						<span style="COLOR: #000000">NULL)</span>
						<span id="Codehighlighter1_220_279_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_220_279_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        printf(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">can't open file 'input.txt'\n</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        exit(</span>
								<span style="COLOR: #000000">-</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    scanf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">%d</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,</span>
						<span style="COLOR: #000000">&amp;</span>
						<span style="COLOR: #000000">n);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    scanf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">%d</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,</span>
						<span style="COLOR: #000000">&amp;</span>
						<span style="COLOR: #000000">M);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    w</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">)malloc(sizeof(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000">)</span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">n);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    p</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">)malloc(sizeof(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000">)</span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">n);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #000000">n;i</span>
						<span style="COLOR: #000000">++</span>
						<span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        scanf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">%d</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,</span>
						<span style="COLOR: #000000">&amp;</span>
						<span style="COLOR: #000000">w[i]);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #000000">n;i</span>
						<span style="COLOR: #000000">++</span>
						<span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        scanf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">%d</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,</span>
						<span style="COLOR: #000000">&amp;</span>
						<span style="COLOR: #000000">p[i]);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    DKNAP(w,p,n,M);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">void</span>
				<span style="COLOR: #000000"> DKNAP(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">w,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">p,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> n,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> M)<br /><img id="Codehighlighter1_517_1234_Open_Image" onclick="this.style.display='none'; Codehighlighter1_517_1234_Open_Text.style.display='none'; Codehighlighter1_517_1234_Closed_Image.style.display='inline'; Codehighlighter1_517_1234_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_517_1234_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_517_1234_Closed_Text.style.display='none'; Codehighlighter1_517_1234_Open_Image.style.display='inline'; Codehighlighter1_517_1234_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_517_1234_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_517_1234_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">f,l,h,k,next,u,i,j,pp,ww,m;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> P[MAXSIZE],W[MAXSIZE];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    f</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">)malloc(sizeof(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000">)</span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">(n</span>
						<span style="COLOR: #000000">+</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    P[</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">]</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    W[</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">]</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    f[</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">]</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">next</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    l</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">h</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;<br /><img id="Codehighlighter1_675_1154_Open_Image" onclick="this.style.display='none'; Codehighlighter1_675_1154_Open_Text.style.display='none'; Codehighlighter1_675_1154_Closed_Image.style.display='inline'; Codehighlighter1_675_1154_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_675_1154_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_675_1154_Closed_Text.style.display='none'; Codehighlighter1_675_1154_Open_Image.style.display='inline'; Codehighlighter1_675_1154_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">for</span>
						<span style="COLOR: #000000">(i</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;i</span>
						<span style="COLOR: #000000">&lt;</span>
						<span style="COLOR: #000000">n;i</span>
						<span style="COLOR: #000000">++</span>
						<span style="COLOR: #000000">)</span>
						<span id="Codehighlighter1_675_1154_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_675_1154_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        k</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">l;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        j</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">h;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">while</span>
								<span style="COLOR: #000000">(W[j]</span>
								<span style="COLOR: #000000">+</span>
								<span style="COLOR: #000000">w[i]</span>
								<span style="COLOR: #000000">&gt;</span>
								<span style="COLOR: #000000">M) j</span>
								<span style="COLOR: #000000">--</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        u</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">j;<br /><img id="Codehighlighter1_743_1042_Open_Image" onclick="this.style.display='none'; Codehighlighter1_743_1042_Open_Text.style.display='none'; Codehighlighter1_743_1042_Closed_Image.style.display='inline'; Codehighlighter1_743_1042_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_743_1042_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_743_1042_Closed_Text.style.display='none'; Codehighlighter1_743_1042_Open_Image.style.display='inline'; Codehighlighter1_743_1042_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">for</span>
								<span style="COLOR: #000000">(j</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">l;j</span>
								<span style="COLOR: #000000">&lt;=</span>
								<span style="COLOR: #000000">u;j</span>
								<span style="COLOR: #000000">++</span>
								<span style="COLOR: #000000">)</span>
								<span id="Codehighlighter1_743_1042_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_743_1042_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            ww</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">W[j]</span>
										<span style="COLOR: #000000">+</span>
										<span style="COLOR: #000000">w[i];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            pp</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">P[j]</span>
										<span style="COLOR: #000000">+</span>
										<span style="COLOR: #000000">p[i];<br /><img id="Codehighlighter1_804_866_Open_Image" onclick="this.style.display='none'; Codehighlighter1_804_866_Open_Text.style.display='none'; Codehighlighter1_804_866_Closed_Image.style.display='inline'; Codehighlighter1_804_866_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_804_866_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_804_866_Closed_Text.style.display='none'; Codehighlighter1_804_866_Open_Image.style.display='inline'; Codehighlighter1_804_866_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span>
										<span style="COLOR: #0000ff">while</span>
										<span style="COLOR: #000000">(k</span>
										<span style="COLOR: #000000">&lt;=</span>
										<span style="COLOR: #000000">h </span>
										<span style="COLOR: #000000">&amp;&amp;</span>
										<span style="COLOR: #000000"> W[k]</span>
										<span style="COLOR: #000000">&lt;</span>
										<span style="COLOR: #000000">ww)</span>
										<span id="Codehighlighter1_804_866_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
												<img src="http://www.blogjava.net/images/dot.gif" />
										</span>
										<span id="Codehighlighter1_804_866_Open_Text">
												<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                W[next]</span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000">W[k];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                P[next]</span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000">P[k];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                next</span>
												<span style="COLOR: #000000">++</span>
												<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                k</span>
												<span style="COLOR: #000000">++</span>
												<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span>
										</span>
										<span style="COLOR: #000000">
												<br />
												<img id="Codehighlighter1_891_929_Open_Image" onclick="this.style.display='none'; Codehighlighter1_891_929_Open_Text.style.display='none'; Codehighlighter1_891_929_Closed_Image.style.display='inline'; Codehighlighter1_891_929_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
												<img id="Codehighlighter1_891_929_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_891_929_Closed_Text.style.display='none'; Codehighlighter1_891_929_Open_Image.style.display='inline'; Codehighlighter1_891_929_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span>
										<span style="COLOR: #0000ff">if</span>
										<span style="COLOR: #000000">(k</span>
										<span style="COLOR: #000000">&lt;=</span>
										<span style="COLOR: #000000">h </span>
										<span style="COLOR: #000000">&amp;&amp;</span>
										<span style="COLOR: #000000"> W[k]</span>
										<span style="COLOR: #000000">==</span>
										<span style="COLOR: #000000">ww)</span>
										<span id="Codehighlighter1_891_929_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
												<img src="http://www.blogjava.net/images/dot.gif" />
										</span>
										<span id="Codehighlighter1_891_929_Open_Text">
												<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                pp</span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000">pp</span>
												<span style="COLOR: #000000">&gt;</span>
												<span style="COLOR: #000000">P[k]</span>
												<span style="COLOR: #000000">?</span>
												<span style="COLOR: #000000">pp:P[k];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                k</span>
												<span style="COLOR: #000000">++</span>
												<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span>
										</span>
										<span style="COLOR: #000000">
												<br />
												<img id="Codehighlighter1_950_999_Open_Image" onclick="this.style.display='none'; Codehighlighter1_950_999_Open_Text.style.display='none'; Codehighlighter1_950_999_Closed_Image.style.display='inline'; Codehighlighter1_950_999_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
												<img id="Codehighlighter1_950_999_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_950_999_Closed_Text.style.display='none'; Codehighlighter1_950_999_Open_Image.style.display='inline'; Codehighlighter1_950_999_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span>
										<span style="COLOR: #0000ff">if</span>
										<span style="COLOR: #000000">(pp</span>
										<span style="COLOR: #000000">&gt;</span>
										<span style="COLOR: #000000">P[next</span>
										<span style="COLOR: #000000">-</span>
										<span style="COLOR: #000000">1</span>
										<span style="COLOR: #000000">])</span>
										<span id="Codehighlighter1_950_999_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
												<img src="http://www.blogjava.net/images/dot.gif" />
										</span>
										<span id="Codehighlighter1_950_999_Open_Text">
												<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                P[next]</span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000">pp;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                W[next]</span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000">ww;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                next</span>
												<span style="COLOR: #000000">++</span>
												<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span>
										</span>
										<span style="COLOR: #000000">
												<br />
												<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span>
										<span style="COLOR: #0000ff">while</span>
										<span style="COLOR: #000000">(k</span>
										<span style="COLOR: #000000">&lt;=</span>
										<span style="COLOR: #000000">h </span>
										<span style="COLOR: #000000">&amp;&amp;</span>
										<span style="COLOR: #000000"> P[k]</span>
										<span style="COLOR: #000000">&lt;</span>
										<span style="COLOR: #000000">P[next</span>
										<span style="COLOR: #000000">-</span>
										<span style="COLOR: #000000">1</span>
										<span style="COLOR: #000000">] ) k</span>
										<span style="COLOR: #000000">++</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img id="Codehighlighter1_1057_1114_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1057_1114_Open_Text.style.display='none'; Codehighlighter1_1057_1114_Closed_Image.style.display='inline'; Codehighlighter1_1057_1114_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
										<img id="Codehighlighter1_1057_1114_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1057_1114_Closed_Text.style.display='none'; Codehighlighter1_1057_1114_Open_Image.style.display='inline'; Codehighlighter1_1057_1114_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">while</span>
								<span style="COLOR: #000000">(k</span>
								<span style="COLOR: #000000">&lt;=</span>
								<span style="COLOR: #000000">h)</span>
								<span id="Codehighlighter1_1057_1114_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_1057_1114_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            P[next]</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">P[k];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            W[next]</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">W[k];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            next</span>
										<span style="COLOR: #000000">++</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            k</span>
										<span style="COLOR: #000000">++</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        f[i</span>
								<span style="COLOR: #000000">+</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">]</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">next;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        l</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">h</span>
								<span style="COLOR: #000000">+</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        h</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">next</span>
								<span style="COLOR: #000000">-</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    m</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000">W[next</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    printf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">\np max is %d \n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,P[next</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">]);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    PARTS(W,w,p,f,n</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">,m);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">void</span>
				<span style="COLOR: #000000"> PARTS(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">W,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">w,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">p,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000">f,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> i,</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> m)<br /><img id="Codehighlighter1_1289_1498_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1289_1498_Open_Text.style.display='none'; Codehighlighter1_1289_1498_Closed_Image.style.display='inline'; Codehighlighter1_1289_1498_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_1289_1498_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1289_1498_Closed_Text.style.display='none'; Codehighlighter1_1289_1498_Open_Image.style.display='inline'; Codehighlighter1_1289_1498_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_1289_1498_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_1289_1498_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> flag,j,k;<br /><img id="Codehighlighter1_1324_1468_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1324_1468_Open_Text.style.display='none'; Codehighlighter1_1324_1468_Closed_Image.style.display='inline'; Codehighlighter1_1324_1468_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1324_1468_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1324_1468_Closed_Text.style.display='none'; Codehighlighter1_1324_1468_Open_Image.style.display='inline'; Codehighlighter1_1324_1468_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">while</span>
						<span style="COLOR: #000000">(m</span>
						<span style="COLOR: #000000">&gt;</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">&amp;&amp;</span>
						<span style="COLOR: #000000"> i</span>
						<span style="COLOR: #000000">&gt;</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">)</span>
						<span id="Codehighlighter1_1324_1468_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_1324_1468_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        flag</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">0</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">for</span>
								<span style="COLOR: #000000">(j</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">f[i</span>
								<span style="COLOR: #000000">-</span>
								<span style="COLOR: #000000">1</span>
								<span style="COLOR: #000000">];j</span>
								<span style="COLOR: #000000">&lt;</span>
								<span style="COLOR: #000000">f[i];j</span>
								<span style="COLOR: #000000">++</span>
								<span style="COLOR: #000000">)<br /><img id="Codehighlighter1_1377_1405_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1377_1405_Open_Text.style.display='none'; Codehighlighter1_1377_1405_Closed_Image.style.display='inline'; Codehighlighter1_1377_1405_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1377_1405_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1377_1405_Closed_Text.style.display='none'; Codehighlighter1_1377_1405_Open_Image.style.display='inline'; Codehighlighter1_1377_1405_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span>
								<span style="COLOR: #0000ff">if</span>
								<span style="COLOR: #000000">(W[j]</span>
								<span style="COLOR: #000000">==</span>
								<span style="COLOR: #000000">m)</span>
								<span id="Codehighlighter1_1377_1405_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_1377_1405_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                flag</span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000">1</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                </span>
										<span style="COLOR: #0000ff">break</span>
										<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img id="Codehighlighter1_1420_1458_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1420_1458_Open_Text.style.display='none'; Codehighlighter1_1420_1458_Closed_Image.style.display='inline'; Codehighlighter1_1420_1458_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
										<img id="Codehighlighter1_1420_1458_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1420_1458_Closed_Text.style.display='none'; Codehighlighter1_1420_1458_Open_Image.style.display='inline'; Codehighlighter1_1420_1458_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">if</span>
								<span style="COLOR: #000000">(flag</span>
								<span style="COLOR: #000000">==</span>
								<span style="COLOR: #000000">0</span>
								<span style="COLOR: #000000">)</span>
								<span id="Codehighlighter1_1420_1458_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_1420_1458_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            printf(</span>
										<span style="COLOR: #000000">"</span>
										<span style="COLOR: #000000">%d\n</span>
										<span style="COLOR: #000000">"</span>
										<span style="COLOR: #000000">,i);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            m</span>
										<span style="COLOR: #000000">-=</span>
										<span style="COLOR: #000000">w[i];<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        i</span>
								<span style="COLOR: #000000">--</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">if</span>
						<span style="COLOR: #000000">(m</span>
						<span style="COLOR: #000000">&gt;</span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">) printf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">%d\n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">,i);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />&#x1A;</span>
		</div>
<img src ="http://www.blogjava.net/ChenGen/aggbug/72533.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-09-28 12:52 <a href="http://www.blogjava.net/ChenGen/archive/2006/09/28/72533.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>复习回溯算法——N皇后问题</title><link>http://www.blogjava.net/ChenGen/archive/2006/09/27/72395.html</link><dc:creator>ChenGen</dc:creator><author>ChenGen</author><pubDate>Wed, 27 Sep 2006 14:11:00 GMT</pubDate><guid>http://www.blogjava.net/ChenGen/archive/2006/09/27/72395.html</guid><wfw:comment>http://www.blogjava.net/ChenGen/comments/72395.html</wfw:comment><comments>http://www.blogjava.net/ChenGen/archive/2006/09/27/72395.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/ChenGen/comments/commentRss/72395.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ChenGen/services/trackbacks/72395.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 今天复习了回溯算法。N皇后问题是一个典型的需要用回溯算法来解决的问题。回溯算法可以用递归方法来实现，也可以用非递归方法来实现。用递归的方法来解决回溯的问题思路很清晰，但是耗费的内存资源较多，速度也较慢；非递归方法具有速度快和耗费较少内存资源的优点，但是程序的逻辑结构却很复杂——不过搞懂之后觉得也很简单。   在写非递归算法之前，参考了网上的一些文章，但是觉得那些程序都很晦涩难懂，而且存在一些问题，...&nbsp;&nbsp;<a href='http://www.blogjava.net/ChenGen/archive/2006/09/27/72395.html'>阅读全文</a><img src ="http://www.blogjava.net/ChenGen/aggbug/72395.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ChenGen/" target="_blank">ChenGen</a> 2006-09-27 22:11 <a href="http://www.blogjava.net/ChenGen/archive/2006/09/27/72395.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>