锘??xml version="1.0" encoding="utf-8" standalone="yes"?>狠狠色丁香久久婷婷综合_中 ,国产精品久久久久久久久软件,精品少妇人妻av无码久久http://www.shnenglu.com/michaelgao/category/7308.htmlzh-cnSat, 19 May 2012 18:15:24 GMTSat, 19 May 2012 18:15:24 GMT60dynamic programminghttp://www.shnenglu.com/michaelgao/archive/2012/05/17/175176.htmlmicheal's techmicheal's techThu, 17 May 2012 01:54:00 GMThttp://www.shnenglu.com/michaelgao/archive/2012/05/17/175176.htmlhttp://www.shnenglu.com/michaelgao/comments/175176.htmlhttp://www.shnenglu.com/michaelgao/archive/2012/05/17/175176.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/175176.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/175176.html鎰熻鍔ㄦ佽鍒掍腑鏈闅劇殑閮ㄥ垎鏄湪瀵繪壘 浠庣姸鎬乯鍒扮姸鎬乮鐨勯掑綊寮忥紝灝卞儚璇佹槑褰掔撼娉曚竴鏍鳳紝浣犲緱鎵懼嚭鍏蜂綋鐨勫紡瀛愭潵銆?br />top bottom
bottom up
1. Longest Increasing Subsequence:
L[i] = max(1+L(j))(j<l && a[j]<a[i])
//if not exist any a[j]<a[i]
L[i] = 1;

getmaxvalueof array a[]


2. Maximum Sum Increasing Subsequence
almost same with above

3. Maximum continous sum

4. rod cutting


]]>
璐績綆楁硶涓庡姩鎬佽鍒?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/11/18/67196.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Tue, 18 Nov 2008 03:20:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/11/18/67196.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/67196.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/11/18/67196.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/67196.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/67196.html</trackback:ping><description><![CDATA[璐績娉曠殑鍩烘湰鎬濊礬錛?  <br>     <br>   浠庨棶棰樼殑鏌愪竴涓垵濮嬭В鍑哄彂閫愭閫艱繎緇欏畾鐨勭洰鏍囷紝浠ュ敖鍙兘蹇殑鍦版眰寰楁洿濂界殑瑙c傚綋杈懼埌鏌愮畻娉曚腑鐨勬煇涓姝ヤ笉鑳藉啀緇х畫鍓嶈繘鏃訛紝綆楁硶鍋滄銆?  <br>   璇ョ畻娉曞瓨鍦ㄩ棶棰橈細   <br>   1.   涓嶈兘淇濊瘉姹傚緱鐨勬渶鍚庤В鏄渶浣崇殑錛?  <br>   2.   涓嶈兘鐢ㄦ潵姹傛渶澶ф垨鏈灝忚В闂錛?  <br>   3.   鍙兘姹傛弧瓚蟲煇浜涚害鏉熸潯浠剁殑鍙瑙g殑鑼冨洿銆? 瀹炵幇璇ョ畻娉曠殑榪囩▼錛?  <br>   浠庨棶棰樼殑鏌愪竴鍒濆瑙e嚭鍙戯紱<br>   <br>   while   鑳芥湞緇欏畾鎬葷洰鏍囧墠榪涗竴姝?  do   <br>   姹傚嚭鍙瑙g殑涓涓В鍏冪礌錛?  <br>   鐢辨墍鏈夎В鍏冪礌緇勫悎鎴愰棶棰樼殑涓涓彲琛岃В <br><br>璐績綆楁硶鏈緇忓吀鐨勪緥瀛愶紝緇欓挶闂銆?  <br>   姣斿涓浗鐨勮揣甯侊紝鍙湅鍏冿紝鏈?鍏?鍏?鍏?0鍏?0銆?0銆?00   <br>     <br>   濡傛灉鎴戣16鍏冿紝鍙互鎷?6涓?鍏冿紝8涓?鍏冿紝浣嗘槸鎬庝箞鏈灝戝憿錛?  <br>   濡傛灉鐢ㄨ椽蹇冪畻錛屽氨鏄垜姣忎竴嬈℃嬁閭e紶鍙兘鎷跨殑鏈澶х殑銆?  <br>   姣斿16錛屾垜絎竴嬈℃嬁20鎷夸笉璧鳳紝鎷?0鍏冿紝OK錛屽墿涓?鍏冿紝鍐嶆嬁涓?鍏冿紝鍓╀笅1鍏?  <br>   涔熷氨鏄?寮?  10銆?銆?銆?  <br>     <br>   姣忔鎷胯兘鎷跨殑鏈澶х殑錛屽氨鏄椽蹇冦?  <br>     <br>   浣嗘槸涓瀹氭敞鎰忥紝璐績寰楀埌鐨勫茍涓嶆槸鏈浼樿В錛屼篃灝辨槸璇寸敤璐績涓嶄竴瀹氭槸鎷跨殑鏈灝戠殑寮犳暟   <br>   璐績鍙兘寰楀埌涓涓瘮杈冨ソ鐨勮В錛岃屼笖璐績綆楁硶寰堝ソ鎯沖緱鍒般?  <br>   鍐嶆敞鎰忥紝涓轟粈涔堟垜浠殑閽卞彲浠ョ敤璐績鍛紵鍥犱負鎴戜滑鍥藉鐨勯挶鐨勫ぇ灝忚璁★紝姝eソ鍙互浣垮緱璐績綆楁硶綆楀嚭鏉ョ殑鏄渶浼樿В錛堜竴鑸槸涓浗瀹剁殑閽卞竵閮藉簲璇ヨ繖涔堣璁★級銆傚鏋滆璁℃垚鍒殑鏍峰瓙鎯呭喌灝變笉鍚屼簡   <br>   姣斿鏌愬浗鐨勯挶甯佸垎涓?  1鍏?鍏?鍏?  <br>   濡傛灉瑕佹嬁6鍏冮挶   鎬庝箞鎷匡紵璐績鐨勮瘽   鍏堟嬁4   鍐嶆嬁涓や釜1     涓鍏?寮犻挶   <br>   瀹為檯鏈浼樺憿錛?  涓ゅ紶3鍏冨氨澶熶簡   <br><br><br> <div>姹傛渶浼樿В鐨勯棶棰橈紝浠庢牴鏈笂璇存槸涓縐嶅瑙g┖闂寸殑閬嶅巻銆傛渶鐩存帴鐨勬毚鍔涘垎鏋愬鏄撳緱鍒幫紝鏈浼樿В鐨勮В絀洪棿閫氬父閮芥槸浠ユ寚鏁伴樁澧為暱錛屽洜姝ゆ毚鍔涚┓涓鵑兘鏄笉鍙鐨勩?/div> <div>鏈浼樿В闂澶ч儴鍒嗛兘鍙互鎷嗗垎鎴愪竴涓釜鐨勫瓙闂錛屾妸瑙g┖闂寸殑閬嶅巻瑙嗕綔瀵瑰瓙闂鏍戠殑閬嶅巻錛屽垯浠ユ煇縐嶅艦寮忓鏍戞暣涓殑閬嶅巻涓閬嶅氨鍙互姹傚嚭鏈浼樿В錛屽涓婇潰鐨勫垎鏋愶紝榪欐槸涓嶅彲琛岀殑銆?/div> <div>璐績鍜屽姩鎬佽鍒掓湰璐ㄤ笂鏄瀛愰棶棰樻爲鐨勪竴縐嶄慨鍓備袱縐嶇畻娉曡姹傞棶棰橀兘鍏鋒湁鐨勪竴涓ц川灝辨槸“瀛愰棶棰樻渶浼樻?#8221;銆傚嵆錛岀粍鎴愭渶浼樿В鐨勬瘡涓涓瓙闂鐨勮В錛屽 浜庤繖涓瓙闂鏈韓鑲畾涔熸槸鏈浼樼殑銆傚鏋滀互鑷《鍚戜笅鐨勬柟鍚戠湅闂鏍戯紙鍘熼棶棰樹綔鏍癸級錛屽垯錛屾垜浠瘡嬈″彧闇瑕佸悜涓嬮亶鍘嗕唬琛ㄦ渶浼樿В鐨勫瓙鏍戝氨鍙互淇濊瘉浼氬緱鍒版暣浣撶殑鏈浼? 瑙c傚艦璞′竴鐐硅錛屽彲浠ョ畝鍗曠殑鐢ㄤ竴涓鹼紙鏈浼樺鹼級浠h〃鏁翠釜瀛愭爲錛岃屼笉鐢ㄥ幓姹傚嚭榪欎釜瀛愭爲鎵鍙兘浠h〃鐨勬墍鏈夊箋?/div> <div>鍔ㄦ佽鍒掓柟娉曚唬琛ㄤ簡榪欎竴綾婚棶棰樼殑涓鑸В娉曘傛垜浠嚜搴曞悜涓婏紙浠庡彾瀛愬悜鏍癸級鏋勯犲瓙闂鐨勮В錛屽姣忎竴涓瓙鏍戠殑鏍癸紝姹傚嚭涓嬮潰姣忎竴涓彾瀛愮殑鍊鹼紝騫朵笖浠ュ叾涓? 鐨勬渶浼樺間綔涓鴻嚜韜殑鍊鹼紝鍏跺畠鐨勫艱垗寮冦傚姩鎬佽鍒掔殑浠d環灝卞彇鍐充簬鍙夋嫨鐨勬暟鐩紙鏍戠殑鍙夋暟錛夊拰瀛愰棶棰樼殑鐨勬暟鐩紙鏍戠殑鑺傜偣鏁幫紝鎴栬呮槸鏍戠殑楂樺害錛燂級銆?/div> <div>璐績綆楁硶鏄姩鎬佽鍒掓柟娉曠殑涓涓壒渚嬨傝椽蹇冪壒鍦紝鍙互璇佹槑錛屾瘡涓涓瓙鏍戠殑鏍圭殑鍊間笉鍙栧喅浜庝笅闈㈠彾瀛愮殑鍊鹼紝鑰屽彧鍙栧喅浜庡綋鍓嶉棶棰樼殑鐘跺喌銆傛崲鍙ヨ瘽璇達紝涓嶉渶 瑕佺煡閬撲竴涓妭鐐規墍鏈夊瓙鏍戠殑鎯呭喌錛屽氨鍙互姹傚嚭榪欎釜鑺傜偣鐨勫箋傞氬父榪欎釜鍊奸兘鏄浜庡綋鍓嶇殑闂鎯呭喌涓嬶紝鏄捐屾槗瑙佺殑“鏈浼?#8221;鎯呭喌銆傚洜姝ょ敤“璐績”鏉ユ弿榪拌繖涓畻娉曠殑 鏈川銆傜敱浜庤椽蹇冪畻娉曠殑榪欎釜鐗規э紝瀹冨瑙g┖闂存爲鐨勯亶鍘嗕笉闇瑕佽嚜搴曞悜涓婏紝鑰屽彧闇瑕佽嚜鏍瑰紑濮嬶紝閫夋嫨鏈浼樼殑璺紝涓鐩磋蛋鍒板簳灝卞彲浠ヤ簡銆傝繖鏍鳳紝涓庡姩鎬佽鍒掔浉姣旓紝瀹冪殑浠? 浠峰彧鍙栧喅浜庡瓙闂鐨勬暟鐩紝鑰岄夋嫨鏁扮洰鎬諱負1銆?/div> <br><br><img src ="http://www.shnenglu.com/michaelgao/aggbug/67196.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-11-18 11:20 <a href="http://www.shnenglu.com/michaelgao/archive/2008/11/18/67196.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>Merge sort鐨勫疄鐜?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/10/08/63463.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Wed, 08 Oct 2008 07:01:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/10/08/63463.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/63463.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/10/08/63463.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/63463.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/63463.html</trackback:ping><description><![CDATA[#include  <iostream><br>using namespace std;<br>#include <assert.h><br>int MergeSort(int A[],int p,int q,int r)<br>{<br>    int n1 = q-p+2;<br>    int n2 = r-q+1;<br>    int *parray1 = new int[n1];<br>    int *parray2 = new int[n2];<br>    assert(parray1);<br>    assert(parray2);<br>    for(int i = 0;i<n1-1;i++)<br>    {<br>        parray1[i] = A[p+i];<br>    }<br>    parray1[n1-1] = 0xffff;<br>    for(int i = 0;i<n2-1;i++)<br>    {<br>        parray2[i] = A[q+i+1];<br>    }<br>    parray2[n2-1] = 0xffff;<br>    for(int i=0,j=0,k=p;k<=r;k++)<br>    {<br>        if(parray1[i]>parray2[j])<br>        {<br>            A[k] = parray2[j];<br>            j++;<br>        }<br>        else<br>        {<br>            A[k] = parray1[i];<br>            i++;<br>        }<br>    }<br><br>    delete []parray1;<br>    delete []parray2;<br><br> <br>}<br>int Merge(int A[],int p,int r)<br>{<br>    if(p<r)<br>    {<br>       int q = (p+r)/2;<br>       Merge(A,p,q);<br>       Merge(A,q+1,r);<br>       MergeSort(A,p,q,r);<br>    }<br>}<br>int main()<br>{<br>    int a[]={5,2,4,7,1,3,2,6};<br>    Merge(a,0,sizeof(a)/sizeof(int)-1);<br>    for(int i=0;i<8;i++)<br>    {<br>        cout<<a[i]<<" ";<br>    }<br>    cout<<endl;<br>}<br><br> <br> <br> <img src ="http://www.shnenglu.com/michaelgao/aggbug/63463.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-10-08 15:01 <a href="http://www.shnenglu.com/michaelgao/archive/2008/10/08/63463.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鏁e垪鍑芥暟http://www.shnenglu.com/michaelgao/archive/2008/08/18/59202.htmlmicheal's techmicheal's techMon, 18 Aug 2008 03:26:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/08/18/59202.htmlhttp://www.shnenglu.com/michaelgao/comments/59202.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/08/18/59202.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/59202.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/59202.html甯哥敤鐨勬暎鍒楀嚱鏁幫紝閫傜敤浜庢暣鏁幫紝妯℃暎鍒楀嚱鏁幫細k mod錛圡)
閫傜敤浜庡叧閿瓧涓哄瓧絎︿覆鐨勭畻娉曪細闇嶇撼綆楁硶銆?br>鏁e垪鏈涓昏鐨勪紭瓚婃ц兘鍦ㄤ簬鑳藉鎻愪緵榪戜技浜庡父鏁扮殑鏃墮棿銆?br>

]]>
鍥涘垯榪愮畻鐨勫疄鐜?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/07/22/56866.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Tue, 22 Jul 2008 07:40:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/07/22/56866.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/56866.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/07/22/56866.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/56866.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/56866.html</trackback:ping><description><![CDATA[鍥涘垯榪愮畻鍖呮嫭鎷彿涓鑸敤鏍堟潵瀹炵幇銆?br>#include "stack.h"<br>#include <string><br>#include <iostream><br>using namespace std;<br><br>int main(int argc,char *argv[])<br>{<br>    //char *a = argv[1];<br>   // char *a = "(((2*(3-3))+5)*3)";<br>    char *a = "4*3-2";<br>    size_t len = strlen(a);<br><br>    //the operation value<br>    MyStack<int> opv(128);<br>    //the opeartion transfer<br>    MyStack<char> opt(128);<br><br><br>    for(int i=0;i<len;i++)<br>    {<br>        if((a[i]>='0')&&(a[i]<='9'))<br>                //cout<<a[i];<br>        {<br>            opv.push(0);<br>    <br>        }<br>        while((a[i]>='0')&&(a[i]<='9'))<br>        opv.push(opv.pop()*10+a[i++]-'0');<br>        if(')'== a[i]) <br>        {<br>            char c = opt.pop();<br>            if('*' == c)<br>            opv.push(opv.pop()*opv.pop());<br>            if('+' == c)<br>            opv.push(opv.pop()+opv.pop());<br>            if('-' == c)<br>            opv.push(-(opv.pop()-opv.pop()));<br>        }<br><br><br>    <br>        if(('-'== a[i])||('+' == a[i])||('*' == a[i]))<br>        {<br>            opt.push(a[i]);<br>        }<br>    }<br>    cout<<opv.pop()<<endl;<br><br><br>}<br> <img src ="http://www.shnenglu.com/michaelgao/aggbug/56866.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-07-22 15:40 <a href="http://www.shnenglu.com/michaelgao/archive/2008/07/22/56866.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鍐呴儴鎺掑簭鐨勫嚑縐嶆柟娉曠殑姣旇緝http://www.shnenglu.com/michaelgao/archive/2008/06/27/54810.htmlmicheal's techmicheal's techFri, 27 Jun 2008 08:01:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/06/27/54810.htmlhttp://www.shnenglu.com/michaelgao/comments/54810.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/06/27/54810.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/54810.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/54810.html                       鏈鍧忔椂闂村鏉傚害  騫沖潎鏃墮棿澶嶆潅搴?nbsp; 絀洪棿澶嶆潅搴?nbsp;  紼沖畾鎺掑簭  鍏跺畠鐗圭偣
鍐掓場鎺掑簭
蹇熸帓搴?br>
鎻掑叆鎺掑簭
shell鎺掑簭

閫夋嫨鎺掑簭
鍫嗘帓搴?br>
褰掑茍鎺掑簭

鍩烘暟鎺掑簭
http://student.zjzk.cn/course_ware/data_structure/web/paixu/paixu8.7.1.1.htm




]]>
mykmphttp://www.shnenglu.com/michaelgao/archive/2008/06/26/54685.htmlmicheal's techmicheal's techThu, 26 Jun 2008 09:37:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/06/26/54685.htmlhttp://www.shnenglu.com/michaelgao/comments/54685.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/06/26/54685.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/54685.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/54685.htmlusing namespace std;
int getIndex(const char * p,int next[])
{
    if(p == NULL)
        return -1;
    int k = -1;
    int j = 0;
    next[0] = -1;
    while(p[j])
    {
        if(k==-1||p[k]==p[j])
        {
            ++j;
            ++k;
            if(p[k]!=p[j])
            {
                next[j] = k;
            }
            else
            {
                next[j] = next[k];
            }
        }
        else
        {
            k = next[k];
        }
    }
}


int kmpcompare(const char * srcstr,const char * deststr,int next[] )
{
    if(!srcstr ||!deststr||!next)
        return -1;
    int i = 0;
    int j = 0;
    while(srcstr[i]!='\0'&&deststr[j]!='\0')
    {
        if(srcstr[i] == deststr[j])
        {
            i++;
            j++;
        }
        else
        {
            if(next[j]!=-1)
            {
                j = next[j];
            }
            else
            {
                i++;
                j=0;
            }

        }
    }
    if(deststr[j] == '\0')
    {
        return i-j;
    }
    else
    {
        return -1;
    }

}






]]>
鍫嗘帓鍒嗘瀽銆?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53520.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Mon, 16 Jun 2008 03:40:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53520.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/53520.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53520.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/53520.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/53520.html</trackback:ping><description><![CDATA[鍫嗕紭鍖栫殑鏂規硶錛?br>1銆佽嚜欏跺悜涓?br>template <class Item><br>void fixDown(Item a[],int k,int N)<br>{<br>    Item temp;<br>    while(2*k <= N)<br>    {<br>        int j = 2*k;<br>        if (j<N&&a[j]<a[j+1]) j++;<br>        if (!(a[k]<a[j])) break;<br>        //cout<<"fixdown"<<j<<endl;<br>        exch(a[k],a[j]);<br>        k = j;<br>    }<br>}<br>鏍規嵁鍫嗘槸涓畬鍏ㄤ簩鍙夋爲錛屾妸闄や簡鍙惰妭鐐逛互澶栫殑浠庝笅寰涓婇愭鎺掑ソ銆?br>2銆佽嚜搴曞悜涓?br>template <class Item><br>void fixUp(Item a[],int k)<br>{<br>    while(k>1 && a[k/2]<a[k])<br>    {<br>        exch(a[k],a[k/2]);<br>        k = k/2;<br>    }<br>} <br><br>鍫嗘帓鎺掑簭鐨勬楠わ紝<br>1銆佸緩绔嬪爢銆?br>鍙互鎻掑叆鐨勬柟娉曟垨鑰呴噰鍙栦慨姝e爢鐨勬柟娉曘?br>  for(k=N/2;k>=l;k--)<br>    {<br>        fixDown(pq,k,N);<br>    } <br>2銆侀愭鎺掑簭銆?br>   while(N>l)<br>    {<br>        exch(pq[l],pq[N]);<br>        fixDown(pq,l,--N);<br>    } <br><br>鎬葷畻娉曪細<br>template <class Item><br>void heapsort(Item a[],int l,int r)<br>{<br>    int  k = l,N = r-l+1;<br>    Item *pq = a+l-1;<br>    for(k=N/2;k>=l;k--)<br>    {<br>        fixDown(pq,k,N);<br>    }<br>    while(N>l)<br>    {<br>        exch(pq[l],pq[N]);<br>        fixDown(pq,l,--N);<br>    }<br><br>} <br><br><br><br>鍫嗘帓搴忓紩鐢崇殑棰樼洰銆?br>濡傛灉闇瑕?font color="#cc0033">鎵懼嚭</font>N<font color="#cc0033">涓暟</font>涓?font color="#cc0033">鏈澶х殑K涓?/font>涓嶅悓鐨勬暟 <br> <p><br></p> <p>璁?em>N</em> > <em>K</em>錛屽墠<em>K</em>涓暟涓殑鏈澶?em>K</em>涓暟鏄竴涓鍖栫殑鎯呭喌錛屾墍鏈?em>K</em>涓暟灝辨槸鏈澶х殑<em>K</em>涓暟銆傚鏋滆冭檻絎?em>K</em>+1涓暟<em>X</em>鍛紵濡傛灉<em>X</em>姣旀渶澶х殑<em>K</em>涓暟涓殑鏈灝忕殑鏁?em>Y</em>灝忥紝閭d箞鏈澶х殑<em>K</em>涓暟榪樻槸淇濇寔涓嶅彉銆傚鏋?em>X</em>姣?em>Y</em>澶э紝閭d箞鏈澶х殑<em>K</em>涓暟搴旇鍘繪帀<em>Y</em>錛岃屽寘鍚?em>X</em>銆傚鏋滅敤涓涓暟緇勬潵瀛樺偍鏈澶х殑<em>K</em>涓暟錛屾瘡鏂板姞鍏ヤ竴涓暟<em>X</em>錛屽氨鎵弿涓閬嶆暟緇勶紝寰楀埌鏁扮粍涓渶灝忕殑鏁?em>Y</em>銆傜敤<em>X</em>鏇夸唬<em>Y</em>錛屾垨鑰呬繚鎸佸師鏁扮粍涓嶅彉銆傝繖鏍風殑鏂規硶錛屾墍鑰楄垂鐨勬椂闂翠負<em>O</em>錛?em>N</em> *<em> K</em>錛夈?/p> <p>榪涗竴姝ワ紝鍙互鐢ㄥ閲忎負<em>K</em>鐨勬渶灝忓爢鏉ュ瓨鍌ㄦ渶澶х殑<em>K</em>涓暟銆傛渶灝忓爢鐨勫爢欏跺厓绱犲氨鏄渶澶?em>K</em>涓暟涓渶灝忕殑涓涓傛瘡嬈℃柊鑰冭檻涓涓暟<em>X</em>錛屽鏋?em>X</em>姣斿爢欏剁殑鍏冪礌<em>Y</em>灝忥紝鍒欎笉闇瑕佹敼鍙樺師鏉ョ殑鍫嗭紝鍥犱負榪欎釜鍏冪礌姣旀渶澶х殑<em>K</em>涓暟灝忋傚鏋?em>X</em>姣斿爢欏跺厓绱犲ぇ錛岄偅涔堢敤<em>X</em>鏇挎崲鍫嗛《鐨勫厓绱?em>Y</em>銆傚湪<em>X</em>鏇挎崲鍫嗛《鍏冪礌<em>Y</em>涔嬪悗錛?em>X</em>鍙兘鐮村潖鏈灝忓爢鐨勭粨鏋勶紙姣忎釜緇撶偣閮芥瘮瀹冪殑鐖朵翰緇撶偣澶э級錛岄渶瑕佹洿鏂板爢鏉ョ淮鎸佸爢鐨勬ц川銆傛洿鏂拌繃紼嬭姳璐圭殑鏃墮棿澶嶆潅搴︿負<em>O</em>錛坙og<sub>2</sub><em>K</em>錛夈?/p> <p><img alt="ImageName" src="http://www.msra.cn/files/images/5c5c36b2-0167-4274-931b-cf102a8d8d3c.bmp" aligh="absMiddle" border="0" height="180"></p> <p>鍥?-1</p> <p>鍥?-1鏄竴涓爢錛岀敤涓涓暟緇?em>h</em>[]琛ㄧず銆傛瘡涓厓绱?em>h</em>[<em>i</em>]錛屽畠鐨勭埗浜茬粨鐐規槸<em>h</em>[<em>i</em>/2]錛屽効瀛愮粨鐐規槸<em>h</em>[2 * <em>i</em> + 1]鍜?em>h</em>[2 * <em>i</em> + 2]銆傛瘡鏂拌冭檻涓涓暟<em>X</em>錛岄渶瑕佽繘琛岀殑鏇存柊鎿嶄綔浼唬鐮佸涓? </p> <p>浠g爜娓呭崟2-13 </p> <div> <p>if(X > h[0])</p> </div> <p>{</p> <p>    h[0] = X;</p> <p>    p = 0;</p> <p>    while(p < K)</p> <p>    {</p> <p>        q = 2 * p + 1;</p> <p>        if(q >= K) </p> <p>            break;</p> <p>        if((q < K – 1) && (h[q + 1] < h[q]))</p> <p>            q = q + 1;</p> <p>        if(h[q] < h[p])</p> <p>        {</p> <p>            t = h[p]; </p> <p>            h[p] = h[q];</p> <p>            h[q] = t;</p> <p>            p = q;</p> <p>        }</p> <p>        else</p> <p>            break;</p> <p>    }</p> <div> <p>}</p> </div> <p>鍥犳錛岀畻娉曞彧闇瑕佹壂鎻忔墍鏈夌殑鏁版嵁涓嬈★紝鏃墮棿澶嶆潅搴︿負<em>O</em>錛?em>N</em> * log<sub>2</sub><em>K</em>錛夈傝繖瀹為檯涓婃槸閮ㄥ垎鎵ц浜嗗爢鎺掑簭鐨勭畻娉曘傚湪絀洪棿鏂歸潰錛岀敱浜庤繖涓畻娉曞彧鎵弿鎵鏈夌殑鏁版嵁涓嬈★紝鍥犳鎴戜滑鍙渶瑕佸瓨鍌ㄤ竴涓閲忎負<em>K</em>鐨勫爢銆傚ぇ澶氭暟鎯呭喌涓嬶紝鍫嗗彲浠ュ叏閮ㄨ澆鍏ュ唴瀛樸傚鏋?em>K</em>浠嶇劧寰堝ぇ錛屾垜浠彲浠ュ皾璇曞厛鎵炬渶澶х殑<em>K</em>’涓厓绱狅紝鐒跺悗鎵劇<em>K</em>’+1涓埌絎? * <em>K</em>’涓厓绱狅紝濡傛綾繪帹錛堝叾涓閲?em>K</em>’鐨勫爢鍙互瀹屽叏杞藉叆鍐呭瓨錛夈備笉榪囪繖鏍鳳紝鎴戜滑闇瑕佹壂鎻忔墍鏈夋暟鎹甤eil<a title="" name="_ftnref1"></a>錛?em>K</em>/<em>K</em>’錛夋銆?/p> <br><br> <img src ="http://www.shnenglu.com/michaelgao/aggbug/53520.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-06-16 11:40 <a href="http://www.shnenglu.com/michaelgao/archive/2008/06/16/53520.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>蹇帓鍒嗘瀽http://www.shnenglu.com/michaelgao/archive/2008/06/16/53519.htmlmicheal's techmicheal's techMon, 16 Jun 2008 03:40:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/06/16/53519.htmlhttp://www.shnenglu.com/michaelgao/comments/53519.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/06/16/53519.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/53519.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/53519.htmltemplate<class T>
bubblesort(T *src,int lne)
{
      
}
鍓嶈呮槸閫氳繃鐩擱偦涔嬮棿浜ゆ崲鐨勬柟寮忔潵銆?br>鑰屽悗鑰呮槸閫氳繃涓涓煎緱姣旇緝鏉ヤ氦鎹㈢殑鏂瑰紡銆?br>
template <class T>
void quicksort(T *src,int low,int high)
{
    T temp;
    int i = low;
    int k = high;
    if(low >=high) return;
    temp = src[low];

    while(low<high)
    {
        while(low<high&&src[high]>=temp) high--;
        src[low] = src[high];
        while(low<high&&src[low]<=temp) low++;
        src[high] = src[low];
    }
    src[low] = temp;
    quicksort(src,i,low-1);
    quicksort(src,low+1,k);
}




]]>
B鏍戝師鐞?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53518.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Mon, 16 Jun 2008 03:39:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53518.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/53518.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53518.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/53518.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/53518.html</trackback:ping><description><![CDATA[B鏍戝師鐞? <br><img src ="http://www.shnenglu.com/michaelgao/aggbug/53518.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-06-16 11:39 <a href="http://www.shnenglu.com/michaelgao/archive/2008/06/16/53518.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>浜屽弶鎼滅儲鏍戠殑闅忔満鍖栧緩绔嬫柟娉?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53514.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Mon, 16 Jun 2008 03:26:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53514.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/53514.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53514.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/53514.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/53514.html</trackback:ping><description><![CDATA[浜屽弶鎼滅儲鏍戠殑闅忔満鍖栧緩绔嬫柟娉? <br>浜屽弶鎼滅儲鏁版槸涓媯典簩鍙夋爲錛屽叾涓瘡涓涓唴閮ㄨ妭鐐歸兘鏈変竴涓浉鍏崇殑鍏抽敭瀛楋紝騫舵湁璐熸湁浠ヤ笅鐨勬ц川銆備換鎰忚妭鐐圭殑鍏抽敭瀛楀ぇ浜庯紙鎴栬呯瓑浜庯級璇ヨ妭鐐瑰乏瀛愭爲鐨勬墍鏈夊叧閿瓧錛屽茍灝忎簬錛堟垨鑰呯瓑浜庯級璇ヨ妭鐐瑰彸瀛愭爲鐨勬墍鏈夊叧閿瓧銆?br> <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"><br> <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">#include </span><span style="color: #000000;"><</span><span style="color: #000000;">stdlib.h</span><span style="color: #000000;">></span><span style="color: #000000;"><br>#include </span><span style="color: #000000;"><</span><span style="color: #000000;">iostream.h</span><span style="color: #000000;">></span><span style="color: #000000;"><br></span><span style="color: #0000ff;">static</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> maxKey </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">1000</span><span style="color: #000000;">;<br>typedef </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> Key;<br></span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Item{<br>    </span><span style="color: #0000ff;">private</span><span style="color: #000000;">:<br>        Key keyval;<br>        </span><span style="color: #0000ff;">float</span><span style="color: #000000;"> info;<br>    </span><span style="color: #0000ff;">public</span><span style="color: #000000;">:<br>        Item()<br>        {keyvalue </span><span style="color: #000000;">=</span><span style="color: #000000;"> maxKey;}<br>        Key key()<br>        {</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> keyvalue;}<br>        </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> </span><span style="color: #0000ff;">null</span><span style="color: #000000;">()<br>        {<br>            </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> keyvalue  </span><span style="color: #000000;">==</span><span style="color: #000000;">maxKey;<br>        }<br>        </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> rand()<br>        {<br>            keyval </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">1000</span><span style="color: #000000;">*</span><span style="color: #000000;">::rand()</span><span style="color: #000000;">/</span><span style="color: #000000;">RAND_MAX;<br>        }<br>        </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> scan(istream</span><span style="color: #000000;">&</span><span style="color: #000000;"> </span><span style="color: #0000ff;">is</span><span style="color: #000000;">=</span><span style="color: #000000;">cin)<br>        {<br>            </span><span style="color: #0000ff;">return</span><span style="color: #000000;">(</span><span style="color: #0000ff;">is</span><span style="color: #000000;">>></span><span style="color: #000000;">keyvalue</span><span style="color: #000000;">>></span><span style="color: #000000;">info )</span><span style="color: #000000;">!=</span><span style="color: #000000;">0</span><span style="color: #000000;">);<br>        }<br>        </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> show(ostream</span><span style="color: #000000;">&</span><span style="color: #000000;"> os</span><span style="color: #000000;">=</span><span style="color: #000000;">cout)<br>        {<br>            os</span><span style="color: #000000;"><<</span><span style="color: #000000;">keyvalue</span><span style="color: #000000;"><<</span><span style="color: #000000;">"</span><span style="color: #000000;"> </span><span style="color: #000000;">"</span><span style="color: #000000;"><<</span><span style="color: #000000;">info</span><span style="color: #000000;"><<</span><span style="color: #000000;">endl;<br>        }<br>};<br>ostream</span><span style="color: #000000;">&</span><span style="color: #000000;"> </span><span style="color: #0000ff;">operator</span><span style="color: #000000;"><<</span><span style="color: #000000;">(ostream </span><span style="color: #000000;">&</span><span style="color: #000000;">os,Item </span><span style="color: #000000;">&</span><span style="color: #000000;">X)<br>{<br>    X.show(os);<br>    </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> os;<br>}</span></div> <br></span><span style="color: #000000;"></span><span style="color: #000000;"><br>template </span><span style="color: #000000;"><</span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Item,</span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Key</span><span style="color: #000000;">></span><span style="color: #000000;"><br></span><span style="color: #0000ff;">class</span><span style="color: #000000;"> ST<br>{<br>    </span><span style="color: #0000ff;">private</span><span style="color: #000000;">:<br>        </span><span style="color: #0000ff;">struct</span><span style="color: #000000;"> node<br>        {<br>            Item item;<br>            node </span><span style="color: #000000;">*</span><span style="color: #000000;">l,</span><span style="color: #000000;">*</span><span style="color: #000000;">r;<br>            node(Item x)<br>            {<br>                item </span><span style="color: #000000;">=</span><span style="color: #000000;"> x;<br>                l </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br>                r </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br>            }<br>        };<br>        typedef node </span><span style="color: #000000;">*</span><span style="color: #000000;"> link;<br>        link head;<br>        </span><span style="color: #0000ff;">struct</span><span style="color: #000000;"> node nullitem;<br><br>        </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> insertR(link </span><span style="color: #000000;">&</span><span style="color: #000000;">h,Item x)<br>        {<br>            </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(h </span><span style="color: #000000;">==</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">)<br>            {<br>                h </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> node(x);<br>                </span><span style="color: #0000ff;">return</span><span style="color: #000000;">;<br>            }<br>            </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(x.key()</span><span style="color: #000000;"><</span><span style="color: #000000;">h</span><span style="color: #000000;">-></span><span style="color: #000000;">item.key())<br>            {<br>                insertR(h</span><span style="color: #000000;">-></span><span style="color: #000000;">l,x);<br>            }<br>            </span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br>            {<br>                insertR(h</span><span style="color: #000000;">-></span><span style="color: #000000;">r,x);<br>            }<br><br>        }<br>        Item searchR(link </span><span style="color: #000000;">&</span><span style="color: #000000;">h,Key v)<br>        {<br>            </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(h </span><span style="color: #000000;">==</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">)<br>                </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> nullitem;<br>            </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(h</span><span style="color: #000000;">-></span><span style="color: #000000;">item.key() </span><span style="color: #000000;">==</span><span style="color: #000000;"> v)<br>            {<br>                </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> h</span><span style="color: #000000;">-></span><span style="color: #000000;">Item;<br>            }<br>            </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(h</span><span style="color: #000000;">-></span><span style="color: #000000;">item.key()</span><span style="color: #000000;"><</span><span style="color: #000000;">v)<br>            {<br>                searchR(h</span><span style="color: #000000;">-></span><span style="color: #000000;">right,v);<br>            }<br>            </span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br>            {<br>                searchR(h</span><span style="color: #000000;">-></span><span style="color: #000000;">left,v);<br>            }<br><br>        }<br><br>        }<br>    </span><span style="color: #0000ff;">public</span><span style="color: #000000;">:<br>        ST(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">)<br>        {<br>        }<br>        </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> count();<br>        Item search(Key);<br>        </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> insert(Item);<br>        </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> remove(Item);<br>        Item select(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">);<br>        </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> show(ostream </span><span style="color: #000000;">&</span><span style="color: #000000;">);<br>};<br></span></div> <br> <img src ="http://www.shnenglu.com/michaelgao/aggbug/53514.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-06-16 11:26 <a href="http://www.shnenglu.com/michaelgao/archive/2008/06/16/53514.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>錛輯錛板瓧絎︿覆鍖歸厤銆?/title><link>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53505.html</link><dc:creator>micheal's tech</dc:creator><author>micheal's tech</author><pubDate>Mon, 16 Jun 2008 02:57:00 GMT</pubDate><guid>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53505.html</guid><wfw:comment>http://www.shnenglu.com/michaelgao/comments/53505.html</wfw:comment><comments>http://www.shnenglu.com/michaelgao/archive/2008/06/16/53505.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/michaelgao/comments/commentRss/53505.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/michaelgao/services/trackbacks/53505.html</trackback:ping><description><![CDATA[     鎽樿: 杞澆姣旇緝璇︾粏                                  ...  <a href='http://www.shnenglu.com/michaelgao/archive/2008/06/16/53505.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/michaelgao/aggbug/53505.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/michaelgao/" target="_blank">micheal's tech</a> 2008-06-16 10:57 <a href="http://www.shnenglu.com/michaelgao/archive/2008/06/16/53505.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鍚庡簭閬嶅巻鐨勯掑綊鍜岄潪閫掑綊綆楁硶http://www.shnenglu.com/michaelgao/archive/2008/06/15/53336.htmlmicheal's techmicheal's techSun, 15 Jun 2008 06:37:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/06/15/53336.htmlhttp://www.shnenglu.com/michaelgao/comments/53336.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/06/15/53336.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/53336.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/53336.htmltemplate <class T>
void recposttraverse(struct node<T>* Tree)
{
    if(Tree == NULL) return;
    recposttraverse(Tree->left);
    recposttraverse(Tree->right);
    visitnode(Tree);
}
鍚庡簭鐨勯潪閫掑綊綆楁硶瑕佸姞鍏ag鐨勫疄鐜般?br>template <class T>
void posttraverse(struct node<T>*tree)
{
    if(tree == NULL) return;
    MyStack<struct node<T> *> treestack;
    treestack.init(20);
    treestack.push(tree);
    struct node<T>* Item;
    while(treestack.gettop()!=0)
    {
        Item  = treestack.pop();
        if(Item&&Item->flag)//true is tree
        {
            Item->flag = false;
            treestack.push(Item);
            if(Item->right)
            treestack.push(Item->right);
            if(Item->left)
            treestack.push(Item->left);
        }
        else
        {
            visitnode(Item);
        }

    }


}





]]>
涓簭閬嶅巻鐨勯掑綊綆楁硶鍜岄潪閫掑綊綆楁硶http://www.shnenglu.com/michaelgao/archive/2008/06/15/53335.htmlmicheal's techmicheal's techSun, 15 Jun 2008 06:35:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/06/15/53335.htmlhttp://www.shnenglu.com/michaelgao/comments/53335.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/06/15/53335.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/53335.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/53335.htmltemplate <class T>
void recitraverse(struct node<T>* Tree)
{
    if(Tree == NULL) return;
    itraverse(Tree->left);
    visitnode(Tree);
    itraverse(Tree->right);
}
涓簭閬嶅巻鐨勯潪閫掑綊綆楁硶visit鑺傜偣鏃朵笌鍓嶅簭涓嶅悓銆?br>template <class T>
void itraverse(struct node<T>*tree)
{
    if(tree == NULL) return;
    MyStack<struct node<T> *> treestack;
    treestack.init(20);
    while(tree != NULL|| treestack.gettop()!=0)
    {
        if(tree!=NULL)
        {
            treestack.push(tree);
            tree = tree->left;
        }
        else
        {
            tree = treestack.pop();
            visitnode(tree);
            tree = tree->right;

        }
    }

}




]]>
鍓嶅簭閬嶅巻浜屽弶鏍戠殑閫掑綊鍜岄潪閫掑綊綆楁硶http://www.shnenglu.com/michaelgao/archive/2008/06/05/52302.htmlmicheal's techmicheal's techThu, 05 Jun 2008 14:20:00 GMThttp://www.shnenglu.com/michaelgao/archive/2008/06/05/52302.htmlhttp://www.shnenglu.com/michaelgao/comments/52302.htmlhttp://www.shnenglu.com/michaelgao/archive/2008/06/05/52302.html#Feedback0http://www.shnenglu.com/michaelgao/comments/commentRss/52302.htmlhttp://www.shnenglu.com/michaelgao/services/trackbacks/52302.html閬嶅巻鏃朵粠鏍硅妭鐐瑰紑濮嬭闂紝璁塊棶宸﹀瓙鏍戯紝鍏抽敭鏄妸鏍戠殑璁塊棶欏哄簭鎼炴竻妤氥?br>褰撻亶鍘嗗畬浠ュ悗鍙堟槸鏍硅妭鐐廣?br>
閫掑綊鍑芥暟瀹為檯涓婂氨鏄爤鐨勬搷浣溿?br>鎵璋撶殑鍏堟牴灝辨槸鍏坴isit瀹屾牴鑺傜偣錛岀劧鍚庡啀閬嶅巻宸﹀瓙鏍戯紝閬嶅巻鍙沖瓙鏍戙?br> 
template <class T>
void recpretraverse(struct node<T>*&Tree)
{
    if(Tree == NULL) return;
    visitnode(Tree);
    recpretraverse(Tree->left);
    recpretraverse(Tree->right);
}

瀵瑰簲鐨勯潪閫掑綊綆楁硶灝辨槸寮瑰嚭欏癸紝鐪嬪鏋滄槸鏍戯紝濡傛灉鍙沖瓙鏍戝瓨鍦ㄥ垯鍘嬪叆鍙沖瓙鏍戯紝宸﹀瓙鏍戝瓨鍦ㄥ垯鍘嬪叆宸﹀瓙鏍戯紝鏈鍚庡帇鍏ヨ妭鐐癸紙tag鍩熷彉鍖栵級銆?br>                            鐪嬪鏋滄槸鑺傜偣錛屽垯璁塊棶鑺傜偣銆?br>鍙互鐪嬪嚭闇瑕佷竴涓猼ag鍩熸潵琛ㄧず寮瑰嚭鑺傜偣榪樻槸鏍戙備絾鏄墠搴忓拰涓簭鍙互閫氳繃鍒殑瀹炵幇鍔炴硶閬垮厤tag瀹炵幇銆?br>  template <class T>
void pretraverse(struct node<T>*tree)
{
    if(tree == NULL) return;
    MyStack<struct node<T> *> treestack;
    treestack.init(20);
    while(tree != NULL|| treestack.gettop()!=0)
    {
        if(tree!=NULL)
        {
            treestack.push(tree);
            visitnode(tree);
            tree = tree->left;
        }
        else
        {
            tree = treestack.pop();
            tree = tree->right;

        }
    }

}








]]>
欧美午夜A∨大片久久| 久久青草国产手机看片福利盒子| 国产高潮久久免费观看| 51久久夜色精品国产| 久久se精品一区二区| 99久久精品久久久久久清纯| 久久99精品久久久久久不卡| 久久人妻无码中文字幕| 日本三级久久网| 亚洲AV无码久久精品狠狠爱浪潮| 精品无码久久久久久国产| 国内精品久久久久影院亚洲| 亚洲国产精品久久| 久久久久高潮毛片免费全部播放| 精品久久人人妻人人做精品| 人妻无码αv中文字幕久久| 久久99精品国产麻豆婷婷| 新狼窝色AV性久久久久久| 久久久WWW成人免费毛片| 99国产欧美久久久精品蜜芽| 国产精品久久新婚兰兰| 国产一区二区精品久久凹凸| 久久精品国产亚洲AV大全| 超级97碰碰碰碰久久久久最新| 国产99久久久久久免费看 | 亚洲国产精品成人久久蜜臀| 99久久无码一区人妻a黑| 亚洲精品美女久久久久99| 国产69精品久久久久APP下载 | 久久精品人人做人人爽97 | 久久久久国产精品嫩草影院| www久久久天天com| 久久精品国产第一区二区三区 | 国内精品久久久久影院优| 狠狠色噜噜色狠狠狠综合久久| 人妻系列无码专区久久五月天| 精品久久久久久无码人妻蜜桃| 亚洲成人精品久久| 久久精品亚洲乱码伦伦中文| 久久国产精品免费一区| 色综合久久久久综合99|