锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲另类春色国产,欧美日韩p片,亚洲欧美国产视频http://www.shnenglu.com/yuqilin1228/category/13384.html璺湪鑴氫笅zh-cnFri, 26 Mar 2010 14:12:43 GMTFri, 26 Mar 2010 14:12:43 GMT60銆愯漿杞姐戝茍鏌ラ泦 (Union-Find Sets)http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110618.htmlLynnRaymondLynnRaymondFri, 26 Mar 2010 13:59:00 GMThttp://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110618.htmlhttp://www.shnenglu.com/yuqilin1228/comments/110618.htmlhttp://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110618.html#Feedback0http://www.shnenglu.com/yuqilin1228/comments/commentRss/110618.htmlhttp://www.shnenglu.com/yuqilin1228/services/trackbacks/110618.html闃呰鍏ㄦ枃

LynnRaymond 2010-03-26 21:59 鍙戣〃璇勮
]]>
銆愯漿杞姐戜粠闆跺紑濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇?/title><link>http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110617.html</link><dc:creator>LynnRaymond</dc:creator><author>LynnRaymond</author><pubDate>Fri, 26 Mar 2010 13:54:00 GMT</pubDate><guid>http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110617.html</guid><wfw:comment>http://www.shnenglu.com/yuqilin1228/comments/110617.html</wfw:comment><comments>http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110617.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/yuqilin1228/comments/commentRss/110617.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/yuqilin1228/services/trackbacks/110617.html</trackback:ping><description><![CDATA[<a title="Permanent link to 浠庨浂寮濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇嶏紙涓婏級" rel="bookmark"><u><font color="#800080">浠庨浂寮濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇嶏紙涓婏級</font></u></a>   From:Martix67銆愮墰鍟婏紒銆?br>浠婂ぉ鎴戞寮忓紑濮嬫寜鐓?a target="_blank"><u><font color="#0000ff">鎴戠殑鐩綍</font></u></a>鍐欐垜鐨凮I蹇冨緱浜嗐傛垜瑕佹妸 鎴戞墍鏈夊鍒扮殑OI鐭ヨ瘑浼犵粰浠ュ悗鍗冨崈涓囦竾鐨凮Ier銆備互鍓嶅啓榪囩殑涓浜涗笢瑗夸笉閲嶅鍐欎簡錛屼絾鎴戞渶鍚庡皢浼氶噸鏂版暣鐞嗭紝浣夸箣鎴愪負涓涓畬鏁寸殑鏁欑▼銆?br>    鎸夌収 鎴戠殑鐩綍錛岃浠諱綍涓滆タ涔嬪墠鎴戦兘浼氬厛浠嬬粛鏃墮棿澶嶆潅搴︾殑鐩稿叧鐭ヨ瘑錛屼互鍚庡姩涓嶅姩灝變細鎵埌榪欎釜涓滆タ銆傝繖涓凡緇忓啓榪囦簡錛屼綘鍙互鍦?a target="_blank"><u><font color="#0000ff">榪欓噷</font></u></a>鐪嬪埌閭g瘒鍙堣嚟鍙堥暱鐨勬枃绔犮傚湪璁? 鎺掑簭綆楁硶鐨勮繃紼嬩腑錛屾垜浠皢濮嬬粓鍥寸粫鏃墮棿澶嶆潅搴︾殑鍐呭榪涜璇存槑銆?br>    鎴戞妸榪欑瘒鏂囩珷縐頒箣涓?#8220;浠庨浂寮濮嬪綆楁硶”錛屽洜涓烘帓搴忕畻娉曟槸鏈鍩虹鐨勭畻娉曪紝浠嬬粛 綆楁硶鏃朵粠鍚勭鎺掑簭綆楁硶鍏ユ墜鏄渶濂戒笉榪囩殑浜嗐?br><br>    緇欏嚭n涓暟錛屾庢牱灝嗗畠浠粠灝忓埌澶ф帓搴忥紵涓嬮潰涓鍙f皵璁蹭笁縐嶅父鐢ㄧ殑綆楁硶錛屽畠浠槸鏈綆鍗曠殑銆? 鏈鏄劇劧鐨勩佹渶瀹規(guī)槗鎯沖埌鐨勩傞夋嫨鎺掑簭(Selection Sort)鏄錛屾瘡嬈′粠鏁板垪涓壘鍑轟竴涓渶灝忕殑鏁版斁鍒版渶鍓嶉潰鏉ワ紝鍐嶄粠鍓╀笅鐨刵-1涓暟涓夋嫨涓涓渶灝忕殑錛屼笉鏂仛涓嬪幓銆傛彃鍏ユ帓搴?Insertion Sort)鏄紝姣忔浠庢暟鍒椾腑鍙栦竴涓繕娌℃湁鍙栧嚭榪囩殑鏁幫紝騫舵寜鐓уぇ灝忓叧緋繪彃鍏ュ埌宸茬粡鍙栧嚭鐨勬暟涓嬌寰楀凡緇忓彇鍑虹殑鏁頒粛鐒舵湁搴忋傚啋娉℃帓搴?Bubble Sort)鍒嗕負鑻ュ共瓚熻繘琛岋紝姣忎竴瓚熸帓搴忎粠鍓嶅線鍚庢瘮杈冩瘡涓や釜鐩擱偦鐨勫厓绱犵殑澶у皬錛堝洜姝や竴瓚熸帓搴忚姣旇緝n-1瀵逛綅緗浉閭?cè)潥勬晭图夠q跺湪姣忔鍙戠幇鍓嶉潰鐨勯偅涓暟姣旂揣鎺ュ畠 鍚庣殑鏁板ぇ鏃朵氦鎹綅緗紱榪涜瓚沖澶氳稛鐩村埌鏌愪竴瓚熻窇瀹屽悗鍙戠幇榪欎竴瓚熸病鏈夎繘琛屼換浣曚氦鎹㈡搷浣滐紙鏈鍧忔儏鍐典笅瑕佽窇n-1瓚燂紝榪欑鎯呭喌鍦ㄦ渶灝忕殑鏁頒綅浜庣粰瀹氭暟鍒楃殑鏈鍚庨潰鏃? 鍙戠敓錛夈備簨瀹炰笂錛屽湪絎竴瓚熷啋娉$粨鏉熷悗錛屾渶鍚庨潰閭d釜鏁拌偗瀹氭槸鏈澶х殑浜嗭紝浜庢槸絎簩嬈″彧闇瑕佸鍓嶉潰n-1涓暟鎺掑簭錛岃繖鍙堝皢鎶婅繖n-1涓暟涓渶灝忕殑鏁版斁鍒版暣涓暟鍒? 鐨勫掓暟絎簩涓綅緗傝繖鏍蜂笅鍘伙紝鍐掓場鎺掑簭絎琲瓚熺粨鏉熷悗鍚庨潰i涓暟閮藉凡緇忓埌浣嶄簡錛岀i+1瓚熷疄闄呬笂鍙冭檻鍓峮-i涓暟錛堥渶瑕佺殑姣旇緝嬈℃暟姣斿墠闈㈡墍璇寸殑n-1瑕? 灝忥級銆傝繖鐩稿綋浜庣敤鏁板褰掔撼娉曡瘉鏄庝簡鍐掓場鎺掑簭鐨勬紜э細瀹炶川涓庨夋嫨鎺掑簭鐩稿悓銆備笂闈㈢殑涓変釜綆楁硶鎻忚堪鍙兘鏈夌偣妯$硦浜嗭紝娌℃槑鐧界殑璇濈綉涓婃壘璧勬枡錛屼唬鐮佸拰鍔ㄧ敾婕旂ず閬嶅湴 閮芥槸銆?br><img alt="" src="http://www.matrix67.com/blogimage/200703311.gif" border="0"><br>    榪? 涓夌綆楁硶闈炲父瀹規(guī)槗鐞嗚В錛屽洜涓烘垜浠敓媧誨綋涓粡甯稿湪鐢ㄣ傛瘮濡傦紝鐝笂鐨凪M鎼為夌編媧誨姩錛屾湁浜哄彨鎴戠粰鎵鏈塎M鎺掍釜鍚嶃傛垜浠氬父浼氱敤閫夋嫨鎺掑簭錛屽嵆鍏堟壘鍑鴻嚜宸辮涓烘渶婕? 浜殑錛岀劧鍚庢壘絎簩婕備寒鐨勶紝鐒跺悗鎵劇涓夋紓浜殑錛屼笉鏂壘鍓╀笅鐨勪漢涓渶婊℃剰鐨勩傛墦鎵戝厠鐗屾椂鎴戜滑甯屾湜鎶撳畬鐗屽悗鎵嬩笂鐨勭墝鏄湁搴忕殑錛屼笁涓?鎸ㄥ湪涓璧鳳紝鍚庨潰绱ф帴鐫涓や釜 9銆傝繖鏃訛紝鎴戜滑浼氫嬌鐢ㄦ彃鍏ユ帓搴忥紝姣忔鎷垮埌涓寮犵墝鍚庢妸瀹冩彃鍏ュ埌鎵嬩笂鐨勭墝涓傚綋鐨勪綅緗備粈涔堟椂鍊欐垜浠細鐢ㄥ啋娉℃帓搴忓憿錛熸瘮濡傦紝浣撹偛璇句笂浠庣煯鍒伴珮鎺掗槦鏃訛紝绔欓槦瀹屾瘯 鍚庢諱細鏈変漢鍑烘潵錛屾瘮杈冩尐鐫鐨勪袱涓漢鐨勮韓楂橈紝鎸囨尌鍒幫細浣犱滑淇╄皟鎹竴涓嬶紝浣犱滑淇╂崲涓涓嬨?br>    榪欐槸寰堟湁鍚彂鎬х殑銆傝繖鍛婅瘔鎴戜滑錛屼粈涔堟椂鍊欑敤浠涔堟帓搴忔渶 濂姐傚綋浜轟滑娓存湜鍏堢煡閬撴帓鍦ㄥ墠闈㈢殑鏄皝鏃訛紝鎴戜滑鐢ㄩ夋嫨鎺掑簭錛?strong style="color: #0000ff;">褰撴垜浠笉鏂嬁 鍒版柊鐨勬暟騫舵兂淇濇寔宸叉湁鐨勬暟濮嬬粓鏈夊簭鏃訛紝鎴戜滑鐢ㄦ彃鍏ユ帓搴忥紱褰撶粰鍑虹殑鏁板垪宸茬粡姣旇緝鏈夊簭錛屽彧闇瑕佸皬騫呭害鐨勮皟鏁翠竴涓嬫椂錛屾垜浠敤鍐掓場鎺掑簭銆?<br><br>    鎴? 浠潵綆椾竴涓嬫渶鍧忔儏鍐典笅涓夌綆楁硶鍚勯渶瑕佸灝戞姣旇緝鍜岃祴鍊兼搷浣溿?br>    閫夋嫨鎺掑簭鍦ㄧi嬈¢夋嫨鏃惰祴鍊煎拰姣旇緝閮介渶瑕乶-i嬈★紙鍦╪-i+1涓暟涓変竴涓? 鍑烘潵浣滀負褰撳墠鏈灝忓鹼紝鍏朵綑n-i涓暟涓庡綋鍓嶆渶灝忓兼瘮杈冨茍涓嶆柇鏇存柊褰撳墠鏈灝忓鹼級錛岀劧鍚庨渶瑕佷竴嬈¤祴鍊兼搷浣溿傛誨叡闇瑕乶(n-1)/2嬈℃瘮杈冧笌n(n-1) /2+n嬈¤祴鍊箋?br>    鎻掑叆鎺掑簭鍦ㄧi嬈″鎵炬彃鍏ヤ綅緗椂闇瑕佹渶澶歩-1嬈℃瘮杈冿紙浠庡悗寰鍓嶆壘鍒扮涓涓瘮寰呮彃鍏ョ殑鏁板皬鐨勬暟錛屾渶鍧忔儏鍐靛彂鐢熷湪榪欎釜鏁版槸 鎵鏈夊凡緇忓彇鍑虹殑鏁頒腑鏈灝忕殑涓涓殑鏃跺欙級錛屽湪宸叉湁鏁板垪涓粰鏂扮殑鏁拌吘鍑轟綅緗渶瑕乮-1嬈¤祴鍊兼搷浣滄潵瀹炵幇錛岃繕闇瑕佷袱嬈¤祴鍊煎熷姪涓存椂鍙橀噺鎶婃柊鍙栧嚭鐨勬暟鎼繘鎼嚭銆備篃 灝辨槸璇達紝鏈鍧忔儏鍐典笅姣旇緝闇瑕乶(n-1)/2嬈★紝璧嬪奸渶瑕乶(n-1)/2+2n嬈°傛垜榪欎箞鍐欐湁鐐硅瀵間漢錛屽ぇ瀹朵笉瑕佷互涓虹▼搴忕殑瀹炵幇鐢ㄤ簡涓や釜鏁扮粍鍝︼紝鍏跺疄涓 涓暟緇勫氨澶熶簡錛岀湅鐪嬩笂闈㈢殑婕旂ず灝辯煡閬撲簡銆傛垜鍙綆楁硶錛屼竴鑸笉鍐欏浣曞疄鐜般傚綆楁硶鐨勯兘鏄己浜猴紝鐭ラ亾綆楁硶浜嗛兘鑳藉啓鍑轟竴涓紓浜殑浠g爜鏉ャ?br>    鍐掓場鎺? 搴忕i瓚熸帓搴忛渶瑕佹瘮杈僴-i嬈★紝n-1瓚熸帓搴忔誨叡n(n-1)/2嬈°傜粰鍑虹殑搴忓垪閫嗗簭鎺掑垪鏄渶鍧忕殑鎯呭喌錛岃繖鏃舵瘡涓嬈℃瘮杈冮兘瑕佽繘琛屼氦鎹㈡搷浣溿備竴嬈′氦鎹㈡搷浣滈渶 瑕?嬈¤祴鍊煎疄鐜幫紝鍥犳鍐掓場鎺掑簭鏈鍧忔儏鍐典笅闇瑕佽祴鍊?n(n-1)/2嬈°?br>    鎸夌収娓愯繘澶嶆潅搴︾悊璁猴紝蹇界暐鎵鏈夌殑甯告暟錛屼笁縐嶆帓搴忕殑鏈鍧忔儏鍐典笅澶嶆潅 搴﹂兘鏄竴鏍風(fēng)殑錛歄(n^2)銆備絾瀹為檯搴旂敤涓笁縐嶆帓搴忕殑鏁堢巼騫朵笉鐩稿悓銆傚疄璺佃瘉鏄庯紙鏀挎不鑰冭瘯鏃舵瘡閬撳ぇ棰橀兘瑕佺敤榪欏洓涓瓧錛夛紝鎻掑叆鎺掑簭鏄渶蹇殑錛堣櫧鐒舵渶鍧忔儏鍐典笅涓? 閫夋嫨鎺掑簭鐩稿綋鐢氳嚦鏇寸碂錛夛紝鍥犱負姣忎竴嬈℃彃鍏ユ椂瀵繪壘鎻掑叆鐨勪綅緗鏁版儏鍐靛彧闇瑕佷笌宸叉湁鏁扮殑涓閮ㄥ垎榪涜姣旇緝錛堜綘鍙兘鐭ラ亾榪欒繕鑳戒簩鍒嗭級銆備綘鎴栬浼氳鍐掓場鎺掑簭涔熷彲浠ュ湪 鍗婅礬涓婂畬鎴愶紝榪樻病鏈夎窇鍒扮n-1瓚熷氨宸茬粡鏈夊簭銆備絾鍐掓場鎺掑簭鐨勪氦鎹㈡搷浣滄洿璐規(guī)椂錛岃屾彃鍏ユ帓搴忎腑鎵懼埌浜嗘彃鍏ョ殑浣嶇疆鍚庣Щ鍔ㄦ搷浣滃彧闇瑕佺敤璧嬪煎氨鑳藉畬鎴愶紙浣犲彲鑳界煡閬撹繖 榪樿兘鐢╩ove錛夈傛湰鏂囧悗闈㈠皢浠嬬粛鐨勪竴縐嶇畻娉曞氨鍒╃敤鎻掑叆鎺掑簭鐨勮繖浜涗紭鍔褲?br><br>    鎴戜滑璇佹槑浜嗭紝涓夌鎺掑簭鏂規(guī)硶鍦ㄦ渶鍧忔儏鍐典笅鏃墮棿澶嶆潅搴﹂兘鏄? O(n^2)銆備絾澶у鎯寵繃鍚楋紝榪欏彧鏄渶鍧忔儏鍐典笅鐨勩傚湪寰堝鏃跺欙紝澶嶆潅搴︽病鏈夎繖涔堝ぇ錛屽洜涓烘彃鍏ュ拰鍐掓場鍦ㄦ暟鍒楀凡緇忔瘮杈冩湁搴忕殑鎯呭喌涓嬮渶瑕佺殑鎿嶄綔榪滆繙浣庝簬n^2嬈? 錛堟渶濂芥儏鍐典笅鐢氳嚦鏄嚎鎬х殑錛夈傛姏寮閫夋嫨鎺掑簭涓嶈錛堝洜涓哄畠鐨勫鏉傚害鏄?#8220;姝?#8221;鐨勶紝瀵逛簬閫夋嫨鎺掑簭娌℃湁浠涔?#8220;濂?#8221;鐨勬儏鍐碉級錛屾垜浠笅闈㈡帰璁ㄦ彃鍏ユ帓搴忓拰鍐掓場鎺掑簭鍦ㄧ壒瀹? 鏁版嵁鍜屽鉤鍧囨儏鍐典笅鐨勫鏉傚害銆?br>    浣犱細鍙戠幇錛屽鏋滄妸鎻掑叆鎺掑簭涓殑縐誨姩璧嬪兼搷浣滅湅浣滄槸鎶婂綋鍓嶅彇鍑虹殑鍏冪礌涓庡墠闈㈠彇鍑虹殑涓旀瘮瀹冨ぇ鐨勬暟閫愪竴浜ゆ崲錛岄偅鎻掑叆 鎺掑簭鍜屽啋娉℃帓搴忓鏁版嵁鐨勫彉鍔ㄥ叾瀹為兘鏄浉閭誨厓绱犵殑浜ゆ崲鎿嶄綔銆備笅闈㈡垜浠鏄庯紝鑻ュ彧鑳藉鏁板垪涓浉閭?cè)潥勬暟杩涜浜ゆ崲鎿嶄綔锛屽浣曡绠椾娇寰梟涓暟鍙樺緱鏈夊簭鏈灝戦渶瑕佺殑浜ゆ崲 嬈℃暟銆?br>    鎴戜滑瀹氫箟閫嗗簭瀵圭殑姒傚康銆傚亣璁炬垜浠鎶婃暟鍒椾粠灝忓埌澶ф帓搴忥紝涓涓嗗簭瀵規(guī)槸鎸囩殑鍦ㄥ師鏁板垪涓紝宸﹁竟鐨勬煇涓暟姣斿彸杈圭殑澶с備篃灝辨槸璇達紝濡傛灉鎵懼埌 浜嗘煇涓猧鍜宩浣垮緱i<j涓擜i>Aj錛屾垜浠氨璇存垜浠壘鍒頒簡涓涓嗗簭瀵廣傛瘮濡傝錛屾暟鍒?,1,4,2涓湁涓変釜閫嗗簭瀵癸紝鑰屼竴涓凡緇忔湁搴忕殑鏁板垪閫嗗簭 瀵逛釜鏁頒負0銆傛垜浠彂鐜幫紝浜ゆ崲涓や釜鐩擱偦鐨勬暟鏈澶氭秷闄や竴涓嗗簭瀵癸紝涓斿啋娉℃帓搴忥紙鎴栨彃鍏ユ帓搴忥級涓殑涓嬈′氦鎹㈡伆濂借兘娑堥櫎涓涓嗗簭瀵廣傞偅涔堟樉鐒訛紝鍘熸暟鍒椾腑鏈夊灝戜釜閫? 搴忓鍐掓場鎺掑簭錛堟垨鎻掑叆鎺掑簭錛夊氨闇瑕佸灝戞浜ゆ崲鎿嶄綔錛岃繖涓搷浣滄鏁頒笉鍙兘鍐嶅皯銆?br>    鑻ョ粰鍑虹殑n涓暟涓湁m涓嗗簭瀵癸紝鎻掑叆鎺掑簭鐨勬椂闂村鏉傚害鍙互璇? 鏄疧(m+n)鐨勶紝鑰屽啋娉℃帓搴忎笉鑳借繖涔堣錛屽洜涓哄啋娉℃帓搴忔湁寰堝“鏃犵敤”鐨勬瘮杈冿紙姣旇緝鍚庢病鏈変氦鎹級錛岃繖浜涙棤鐢ㄧ殑姣旇緝瓚呰繃浜哋(m+n)涓備粠榪欎釜鎰忎箟涓婅錛? 鎻掑叆鎺掑簭浠嶇劧鏇翠負浼樼錛屽洜涓哄啋娉℃帓搴忕殑澶嶆潅搴﹁鍙楀埌瀹冭窇鐨勮稛鏁扮殑鍒剁害銆備竴涓吀鍨嬬殑渚嬪瓙鏄繖鏍風(fēng)殑鏁板垪錛?, 2, 3, 4, 5, 6, 7, 1銆傚湪榪欐牱鐨勮緭鍏ユ暟鎹笅鎻掑叆鎺掑簭鐨勪紭鍔塊潪甯告槑鏄撅紝鍐掓場鎺掑簭鍙兘鍝潃鍠婁笂澶╀笉鍏?br>    鐒惰岋紝鎴戜滑騫朵笉鎯寵綆楁帓搴忕畻娉曞浜庢煇涓壒瀹氭暟鎹殑鏁堢巼銆傛垜 浠湡姝e叧蹇冪殑鏄紝瀵逛簬鎵鏈夊彲鑳藉嚭鐜扮殑鏁版嵁錛岀畻娉曠殑騫沖潎澶嶆潅搴︽槸澶氬皯銆備笉鐢ㄦ縺鍔ㄤ簡錛屽鉤鍧囧鏉傚害騫朵笉浼氫綆浜庡鉤鏂廣備笅闈㈣瘉鏄庯紝涓ょ綆楁硶鐨勫鉤鍧囧鏉傚害浠嶇劧鏄? O(n^2)鐨勩?br>    鎴戜滑浠呬粎璇佹槑綆楁硶闇瑕佺殑浜ゆ崲嬈℃暟騫沖潎涓篛(n^2)灝辮凍澶熶簡銆傚墠闈㈠凡緇忚榪囷紝瀹冧滑闇瑕佺殑浜ゆ崲嬈℃暟涓庨嗗簭瀵圭殑涓暟鐩稿悓銆傛垜 浠皢璇佹槑錛宯涓暟鐨勬暟鍒椾腑閫嗗簭瀵逛釜鏁板鉤鍧嘜(n^2)涓?br>    璁$畻鐨勬柟娉曟槸鍗佸垎宸у鐨勩傚鏋滄妸緇欏嚭鐨勬暟鍒楀弽榪囨潵錛堜粠鍚庡線鍓嶅掕繃鏉ュ啓錛夛紝浣犱細鍙? 鐜板師鏉ョ殑閫嗗簭瀵圭幇鍦ㄥ彉鎴愰『搴忕殑浜嗭紝鑰屽師鏉ユ墍鏈夌殑闈為嗗簭瀵圭幇鍦ㄩ兘鎴愰嗗簭浜嗐傛鍙嶄袱涓暟鍒楃殑閫嗗簭瀵逛釜鏁板姞璧鋒潵姝eソ灝辨槸鏁板垪鎵鏈夋暟瀵圭殑涓暟錛屽畠絳変簬n(n- 1)/2銆備簬鏄紝騫沖潎姣忎釜鏁板垪鏈塶(n-1)/4涓嗗簭瀵廣傚拷鐣ュ父鏁幫紝閫嗗簭瀵瑰鉤鍧囦釜鏁癘(n^2)銆?br>    涓婇潰鐨勮璁哄惎紺烘垜浠紝瑕佹兂鎼炲嚭涓涓 鏉傚害浣庝簬騫蟲柟綰у埆鐨勬帓搴忕畻娉曪紝鎴戜滑闇瑕佹兂鍔炴硶鑳芥妸紱誨緱鑰佽繙鐨勪袱涓暟榪涜鎿嶄綔銆?br><br>    浜轟滑鎯沖晩鎯沖晩鎯沖晩錛屾庝箞閮芥兂涓嶅嚭鎬庢牱鎵嶈兘鎼炲嚭澶嶆潅搴? 浣庝簬騫蟲柟鐨勭畻娉曘傚悗鏉ワ紝鑻遍泟鍑虹幇浜嗭紝Donald Shell鍙戞槑浜嗕竴縐嶆柊鐨勭畻娉曪紝鎴戜滑灝嗚瘉鏄庡畠鐨勫鏉傚害鏈鍧忔儏鍐典笅涔熸病鏈塐(n^2) 錛堜技涔庢湁浜轟笉鍠滄鐮旂┒姝g‘鎬у拰澶嶆潅搴︾殑璇佹槑錛屾垜浼氱敤瀹炰緥鍛婅瘔澶у錛岃繖浜涜瘉鏄庢槸闈炲父鏈夋剰鎬濈殑錛夈備粬鎶婅繖縐嶇畻娉曞彨鍋歋hell澧為噺鎺掑簭綆楁硶錛堝ぇ瀹跺父璇寸殑甯屽皵鎺? 搴忥級銆?br>    Shell鎺掑簭綆楁硶渚濊禆涓縐嶇О涔嬩負“鎺掑簭澧為噺”鐨勬暟鍒楋紝涓嶅悓鐨勫閲忓皢瀵艱嚧涓嶅悓鐨勬晥鐜囥傚亣濡傛垜浠20涓暟榪涜鎺掑簭錛屼嬌鐢ㄧ殑澧為噺涓? 1,3,7銆傞偅涔堬紝鎴戜滑棣栧厛瀵硅繖20涓暟榪涜“7-鎺掑簭”(7-sortedness)銆傛墍璋?-鎺掑簭錛屽氨鏄寜鐓т綅緗櫎浠?鐨勪綑鏁板垎緇勮繘琛屾帓搴忋傚叿浣撳湴 璇達紝鎴戜滑灝嗘妸鍦?銆?銆?5涓変釜浣嶇疆涓婄殑鏁拌繘琛屾帓搴忥紝灝嗙2銆?銆?6涓暟榪涜鎺掑簭錛屼緷姝ょ被鎺ㄣ傝繖鏍鳳紝瀵逛簬浠繪剰涓涓暟瀛梜錛屽崟鐪婣(k), A(k+7), A(k+14), …榪欎簺鏁版槸鏈夊簭鐨勩?-鎺掑簭鍚庯紝鎴戜滑鎺ョ潃鍙堣繘琛屼竴瓚?-鎺掑簭錛堝埆蹇樹簡鎴戜滑浣跨敤鐨勬帓搴忓閲忎負1,3,7錛夈傛渶鍚庤繘琛?-鎺掑簭錛堝嵆鏅氱殑鎺掑簭錛夊悗鏁翠釜 Shell綆楁硶瀹屾垚銆傜湅鐪嬫垜浠殑渚嬪瓙錛?br><br>  3 7 9 0 5 1 6 8 4 2 0 6 1 5 7 3 4 9 8 2  <-- 鍘熸暟鍒?br>  3 3 2 0 5 1 5 7 4 4 0 6 1 6 8 7 9 9 8 2  <-- 7-鎺掑簭鍚?br>  0 0 1 1 2 2 3 3 4 4 5 6 5 6 8 7 7 9 8 9  <-- 3-鎺掑簭鍚?br>  0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9  <-- 1-鎺掑簭鍚庯紙瀹屾垚錛?br><br>    鍦ㄦ瘡涓瓚熴佹瘡涓緇勭殑鎺掑簭涓垜浠繪槸浣跨敤鎻掑叆鎺掑簭銆備粩緇嗚瀵熶笂闈㈢殑渚嬪瓙浣犱細鍙戠幇鏄粈涔堝鑷翠簡 Shell鎺掑簭鐨勯珮鏁堛傚錛屾瘡涓瓚熸帓搴忓皢浣垮緱鏁板垪閮ㄥ垎鏈夊簭錛屼粠鑰屼嬌寰椾互鍚庣殑鎻掑叆鎺掑簭寰堝揩鎵懼埌鎻掑叆浣嶇疆銆傛垜浠笅闈㈠皢绱х揣鍥寸粫榪欎竴鐐規(guī)潵璇佹槑Shell鎺掑簭綆楁硶 鐨勬椂闂村鏉傚害涓婄晫銆?br>    鍙鎺掑簭澧為噺鐨勭涓涓暟鏄?錛孲hell鎺掑簭綆楁硶灝辨槸姝g‘鐨勩備絾鏄笉鍚岀殑澧為噺灝嗗鑷翠笉鍚岀殑鏃墮棿澶嶆潅搴︺傛垜浠笂闈緥瀛愪腑 鐨勫閲?1, 3, 7, 15, 31, …, 2^k-1)鏄嬌鐢ㄦ渶騫挎硾鐨勫閲忓簭鍒椾箣涓錛屽彲浠ヨ瘉鏄庝嬌鐢ㄨ繖涓閲忕殑鏃墮棿澶嶆潅搴︿負O(n√n)銆傝繖涓瘉鏄庡緢綆鍗曪紝澶у鍙互鍙傜湅涓浜涘叾瀹冪殑璧勬枡錛屾垜浠粖澶╀笉璇? 鏄庡畠銆備粖澶╂垜浠瘉鏄庯紝浣跨敤澧為噺1, 2, 3, 4, 6, 8, 9, 12, 16, …, 2^p*3^q錛屾椂闂村鏉傚害涓篛(n*(log n)^2)銆?br>    寰堟樉鐒訛紝浠諱綍涓涓ぇ浜?鐨勬鏁存暟閮藉彲浠ヨ〃紺轟負2x+3y錛屽叾涓瓁鍜寉鏄潪璐熸暣鏁般備簬鏄紝濡傛灉涓涓暟鍒楀凡緇忔槸2-鎺掑簭鐨勪笖鏄? 3-鎺掑簭鐨勶紝閭d箞瀵逛簬姝ゆ椂鏁板垪涓殑姣忎竴涓暟A(i)錛屽畠鐨勫乏杈規(guī)瘮瀹冨ぇ鐨勫彧鏈夊彲鑳芥槸A(i-1)銆侫2緇濆涓嶅彲鑳芥瘮A12澶э紝鍥犱負10鍙互琛ㄧず涓轟袱涓?鍜屼袱 涓?鐨勫拰錛屽垯A2<A4<A6<A9<A12銆傞偅涔堬紝鍦ㄨ繖涓閲忎腑鐨?-鎺掑簭鏃舵瘡涓暟鎵炬彃鍏ヤ綅緗彧闇瑕佹瘮杈冧竴嬈°備竴鍏辨湁n涓暟錛? 鎵浠?-鎺掑簭鏄疧(n)鐨勩備簨瀹炰笂錛岃繖涓閲忎腑鐨?-鎺掑簭涔熸槸O(n)錛屽洜涓哄湪2-鎺掑簭涔嬪墠錛岃繖涓暟鍒楀凡緇忔槸4-鎺掑簭涓?-鎺掑簭榪囩殑錛屽彧鐪嬫暟鍒楃殑濂囨暟欏規(guī)垨 鑰呭伓鏁伴」錛堝嵆鍗曠湅姣忎竴緇勶級鐨勮瘽灝卞張鎴愪簡鍒氭墠鐨勬牱瀛愩傝繖涓閲忓簭鍒楀閥濡欏氨宸у鍦紝濡傛灉鎴戜滑瑕佽繘琛宧-鎺掑簭錛岄偅涔堝畠涓瀹氭槸2h-鎺掑簭榪囦笖3h-鎺掑簭榪囷紝浜庢槸澶? 鐞嗘瘡涓暟A(i)鐨勬彃鍏ユ椂灝卞彧闇瑕佸拰A(i-h)榪涜姣旇緝銆傝繖涓粨璁哄浜庢渶寮濮嬪嚑嬈★紙h鍊艱緝澶ф椂錛夌殑h-鎺掑簭鍚屾牱鎴愮珛錛屽綋2h銆?h澶т簬n鏃訛紝鎸夌収瀹氫箟錛? 鎴戜滑涔熷彲浠ヨ涓烘暟鍒楁槸2h-鎺掑簭鍜?h-鎺掑簭鐨勶紝榪欏茍涓嶅獎鍝嶄笂榪扮粨璁虹殑姝g‘鎬э紙浣犱篃鍙互璁や負h澶ぇ浠ヨ嚧浜庢帓搴忔椂姣忎竴緇勯噷鐨勬暟瀛椾笉瓚呰繃3涓紝灞炰簬甯告暟綰э級銆? 鐜板湪錛岃繖涓閲忎腑鐨勬瘡涓瓚熸帓搴忛兘鏄疧(n)鐨勶紝鎴戜滑鍙渶瑕佹暟涓涓嬩竴鍏辮窇浜嗗灝戣稛銆備篃灝辨槸璇達紝鎴戜滑鐜板湪鍙渶瑕佺煡閬撳皬浜巒鐨勬暟涓湁澶氬皯涓暟鍏鋒湁2^p*3^q 鐨勫艦寮忋傝鎯?^p*3^q涓嶈秴榪噉錛宲鐨勫彇鍊兼渶澶歄(log n)涓紝q鐨勫彇鍊兼渶澶氫篃鏄疧(log n)涓紝涓や袱緇勫悎鐨勮瘽鍏辨湁O(logn*logn)縐嶆儏鍐點備簬鏄紝榪欐牱鐨勫閲忔帓搴忛渶瑕佽窇O((log n)^2)瓚燂紝姣忎竴瓚熺殑澶嶆潅搴(n)錛屾葷殑澶嶆潅搴︿負O(n*(log n)^2)銆傛棭灝辮榪囦簡錛岃瘉鏄庢椂闂村鏉傚害鍏跺疄寰堟湁鎰忔濄?br>    鎴戜滑鑷劧 浼氭兂錛屾湁娌℃湁鑳戒嬌澶嶆潅搴﹂檷鍒癘(nlogn)鐢氳嚦鏇翠綆鐨勫閲忓簭鍒椼傚緢閬楁喚錛岀幇鍦ㄦ病鏈変換浣曡抗璞¤〃鏄庡瓨鍦∣(nlogn)鐨勫閲忔帓搴忋備絾浜嬪疄涓婏紝寰堝鏃跺? Shell鎺掑簭鐨勫疄闄呮晥鐜囪秴榪囦簡O(nlogn)鐨勬帓搴忕畻娉曘?br><br>    鍚庨潰鎴戜滑灝嗕粙緇嶄笁縐峅(nlogn)鐨勬帓搴忕畻娉曞拰涓夌綰挎ф椂闂寸殑鎺? 搴忕畻娉曘傛渶鍚庢垜浠皢浠ュ閮ㄦ帓搴忓拰鎺掑簭緗戠粶緇撴潫榪欎竴绔犺妭銆?br><br>    寰堝浜洪棶鍒版垜鍏充簬杞創(chuàng)鐨勯棶棰樸傛垜嬈㈣繋闄ゅ晢涓氱洰鐨勫浠諱綍褰㈠紡鐨勮漿璐達紙璁哄潧銆? Blog銆乄iki銆佷釜浜虹綉绔欍丳odCast錛岀敋鑷沖仛鎴恜pt銆乸df錛夛紝浣嗕竴瀹氳娉ㄦ槑鍑哄錛屾渶濂戒繚鐣欏師濮嬮摼鎺ャ傛垜鐨勭綉绔欓渶瑕佺偣鍙嶅悜閾炬帴鎵嶈兘鍦ㄧ綉緇滀腑鐢? 瀛樹笅鍘伙紝澶у涔熼兘鍙互鍏蟲敞騫朵笖鎺ㄥ箍榪欎釜Blog銆傛垜涓鐩存敮鎸乧c鐗堟潈鍗忚錛屽洜姝ゅ彂鐜頒簡鏂囩珷涓殑闂鎴栬呮兂瑕佽ˉ鍏呬粈涔堜笢瑗垮敖綆℃彁鍑烘潵錛屽ソ璁╂洿澶氱殑浜哄涔?fàn)鍒板? 涓滆タ銆傛垜鏄ㄥぉ鐪婤log涓婂師鏉ュ啓鐨勪竴浜涗笢瑗匡紝灞呯劧榪炵潃鍙戠幇浜嗗嚑涓敊璇紡瀛愬拰閿欏埆瀛楋紝濂藉澶у灞呯劧娌℃湁鎻愬嚭鏉ャ傚彂鐜頒簡闂鐪熺殑瑕佸憡璇夋垜錛屽嵆浣挎牸寮忔湁鐐歸棶棰樹篃 瑕佽涓涓嬶紝鍐充笉鑳借瀹冮偅涔堥敊鐫銆傚彟澶栨湁浠涔堝緩璁垨鎯蟲硶涔熻璇翠竴涓嬶紝鎴戝笇鏈涘惉鍒頒笉鍚岀殑澹伴煶涓嶅悓鐨勮瑙o紝濂借鎴戝喅瀹氳繖綾繪枃绔犱互鍚庣殑鍙戝睍鏂瑰悜銆?br><br>Matrix67 鍘熷垱<br>杞創(chuàng)璇鋒敞鏄庡嚭澶?br><br><a title="Permanent link to 浠庨浂寮濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇嶏紙涓婏級" rel="bookmark"><u><font color="#800080">浠庨浂寮濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇嶏紙涓級</font></u></a><br> 鏈枃琚崕涓界殑鍒嗗壊綰垮垎涓轟簡鍥涙銆傚 浜嶰(nlogn)鐨勬帓搴忕畻娉曪紝鎴戜滑璇︾粏浠嬬粛褰掑茍鎺掑簭騫惰瘉鏄庡綊騫舵帓搴忕殑鏃墮棿澶嶆潅搴︼紝鐒跺悗綆鍗曚粙緇嶅爢鎺掑簭錛屼箣鍚庣粰鍑哄揩閫熸帓搴忕殑鍩烘湰鎬濇兂鍜屽鏉傚害璇佹槑銆傛渶鍚庢垜 浠皢璇佹槑錛孫(nlogn)鍦ㄧ悊璁轟笂宸茬粡杈懼埌浜嗘渶浼樸傚榪嘜I鐨勪漢涓鑸兘瀛﹁繃榪欎簺寰堝熀紜鐨勪笢瑗匡紝澶у鏁癘Ier浠笉蹇呯湅浜嗐備負浜嗕繚鎸佺郴鍒楁枃绔犵殑瀹屾暣鎬э紝鎴? 榪樻槸鑺辨椂闂村啓浜嗕竴涓嬨?br><br>    棣栧厛鑰冭檻涓涓畝鍗曠殑闂錛氬浣曞湪綰挎х殑鏃墮棿鍐呭皢涓や釜鏈夊簭闃熷垪鍚堝茍涓轟竴涓湁搴忛槦鍒楋紙騫惰緭鍑猴級錛?br><br>A 闃熷垪錛? 3 5 7 9<br>B闃熷垪錛? 2 7 8 9<br><br>    鐪嬩笂闈㈢殑渚嬪瓙錛孉B涓や釜搴忓垪閮芥槸宸茬粡鏈夊簭鐨勪簡銆傚湪緇欏嚭鏁版嵁宸茬粡鏈夊簭鐨勬儏鍐典笅錛屾垜 浠細鍙戠幇寰堝紲炲鐨勪簨錛屾瘮濡傦紝鎴戜滑灝嗚杈撳嚭鐨勭涓涓暟涓瀹氭潵鑷簬榪欎袱涓簭鍒楀悇鑷渶鍓嶉潰鐨勯偅涓暟銆備袱涓暟閮芥槸1錛岄偅涔堟垜浠殢渚垮彇鍑轟竴涓紙姣斿A闃熷垪鐨勯偅涓? 1錛夊茍杈撳嚭錛?br><br>A闃熷垪錛?s>1</s> 3 5 7 9<br>B闃熷垪錛? 2 7 8 9<br>杈撳嚭錛?<br><br>    娉ㄦ剰錛屾垜浠彇鍑轟簡涓涓暟錛屽湪鍘熸暟鍒椾腑鍒犻櫎榪欎釜鏁般傚垹闄ゆ搷浣滄槸閫氳繃縐誨姩闃熼鎸囬拡瀹? 鐜扮殑錛屽惁鍒欏鏉傚害灝遍珮浜嗐?br>    鐜板湪錛孉闃熷垪鎵撳ご鐨勬暟鍙樻垚3浜嗭紝B闃熷垪鐨勯槦棣栦粛鐒舵槸1銆傛鏃訛紝鎴戜滑鍐嶆瘮杈?鍜?鍝釜澶у茍杈撳嚭灝忕殑閭d釜鏁幫細<br><br>A闃熷垪錛?s>1</s> 3 5 7 9<br>B闃熷垪錛?s>1</s> 2 7 8 9<br>杈撳嚭錛? 1<br><br>    鎺? 涓嬫潵鐨勫嚑姝ュ涓嬶細<br><br>A闃熷垪錛?s>1</s> 3 5 7 9         A闃熷垪錛?s>1 3</s> 5 7 9         A闃熷垪錛?s>1 3 5</s> 7 9          A闃熷垪錛?s>1 3 5 7</s> 9<br>B闃熷垪錛?s>1 2</s> 7 8 9   ==>   B闃熷垪錛?s>1 2</s> 7 8 9   ==>   B闃熷垪錛?s>1 2</s> 7 8 9    ==>   B闃熷垪錛?s>1 2</s> 7 8 9     ……<br>杈撳嚭錛? 1 2              杈撳嚭錛? 1 2 3            杈撳嚭錛? 1 2 3 5           杈撳嚭錛? 1 2 3 5 7<br><br>    鎴戝笇鏈涗綘鏄庣櫧浜嗚繖鏄庝箞鍋氱殑銆傝繖涓仛娉曟樉鐒舵槸姝g‘鐨勶紝澶嶆潅 搴︽樉鐒舵槸綰挎с?br><br>    褰掑茍鎺掑簭(Merge Sort)灝嗕細鐢ㄥ埌涓婇潰鎵璇寸殑鍚堝茍鎿嶄綔銆傜粰鍑轟竴涓暟鍒楋紝褰掑茍鎺掑簭鍒╃敤鍚堝茍鎿嶄綔鍦∣(nlogn)鐨勬椂闂村唴灝嗘暟鍒椾粠灝忓埌澶ф帓搴忋傚綊騫舵帓搴忕敤鐨勬槸鍒嗘不 (Divide and Conquer)鐨勬濇兂銆傞鍏堟垜浠妸緇欏嚭鐨勬暟鍒楀鉤鍒嗕負宸﹀彸涓ゆ錛岀劧鍚庡涓ゆ鏁板垪鍒嗗埆榪涜鎺掑簭錛屾渶鍚庣敤鍒氭墠鐨勫悎騫剁畻娉曟妸榪欎袱孌碉紙宸茬粡鎺掕繃搴忕殑錛夋暟鍒楀悎騫朵負涓 涓暟鍒椼傛湁浜轟細闂?#8220;瀵瑰乏鍙充袱孌墊暟鍒楀垎鍒帓搴忔椂鐢ㄧ殑浠涔堟帓搴?#8221;涔堬紵絳旀鏄細鐢ㄥ綊騫舵帓搴忋備篃灝辨槸璇達紝鎴戜滑閫掑綊鍦版妸姣忎竴孌墊暟鍒楀張鍒嗘垚涓ゆ榪涜涓婅堪鎿嶄綔銆備綘涓嶉渶瑕? 鍏沖績瀹為檯涓婃槸鎬庝箞鎿嶄綔鐨勶紝鎴戜滑鐨勭▼搴忎唬鐮佸皢閫掑綊璋冪敤璇ヨ繃紼嬬洿鍒版暟鍒椾笉鑳藉啀鍒嗭紙鍙湁涓涓暟錛変負姝€?br>    鍒濈湅榪欎釜綆楁硶鏃舵湁浜轟細璇互涓烘椂闂村鏉傚害鐩? 褰撻珮銆傛垜浠笅闈㈢粰鍑虹殑涓涓浘灝嗙敤闈為掑綊鐨勭溂鍏夋潵鐪嬪綊騫舵帓搴忕殑瀹為檯鎿嶄綔榪囩▼錛屼緵澶у鍙傝冦傛垜浠彲浠ュ熷姪榪欎釜鍥捐瘉鏄庯紝褰掑茍鎺掑簭綆楁硶鐨勬椂闂村鏉傚害涓? O(nlogn)銆?br><br>[3] [1] [4] [1] [5] [9] [2] [7]<br>  \ /     \ /     \ /     \ /<br>[1 3]   [1 4]   [5 9]   [2 7]<br>     \   /           \   /<br>   [1 1 3 4]       [2 5 7 9]<br>           \       /<br>       [1 1 2 3 4 5 7 9]<br><br>    涓婂浘涓殑姣忎竴涓?#8220; \ / ”琛ㄧず鐨勬槸涓婃枃鎵榪扮殑綰挎ф椂闂村悎騫舵搷浣溿備笂鍥劇敤浜?琛屾潵鍥捐В褰掑茍鎺掑簭銆傚鏋滄湁n涓暟錛岃〃紺烘垚涓婂浘鏄劇劧闇瑕丱(logn)琛屻傛瘡涓琛岀殑鍚堝茍鎿嶄綔澶嶆潅搴︽誨拰閮? 鏄疧(n)錛岄偅涔坙ogn琛岀殑鎬誨鏉傚害涓篛(nlogn)銆傝繖鐩稿綋浜庣敤閫掑綊鏍?wèi)鐨勬栆?guī)硶瀵瑰綊騫舵帓搴忕殑澶嶆潅搴﹁繘琛屼簡鍒嗘瀽銆傚亣璁撅紝褰掑茍鎺掑簭鐨勫鏉傚害涓? T(n)錛孴(n)鐢變袱涓猅(n/2)鍜屼竴涓叧浜巒鐨勭嚎鎬ф椂闂寸粍鎴愶紝閭d箞T(n)=2*T(n/2)+O(n)銆備笉鏂睍寮榪欎釜寮忓瓙鎴戜滑鍙互鍚屾牱鍙互寰楀埌 T(n)=O(nlogn)鐨勭粨璁猴紝浣犲彲浠ヨ嚜宸辮瘯璇曘傚鏋滀綘鑳藉湪綰挎х殑鏃墮棿閲屾妸鍒嗗埆璁$畻鍑虹殑涓ょ粍涓嶅悓鏁版嵁鐨勭粨鏋滃悎騫跺湪涓璧鳳紝鏍規(guī)嵁 T(n)=2*T(n/2)+O(n)=O(nlogn)錛岄偅涔堟垜浠氨鍙互鏋勯燨(nlogn)鐨勫垎娌葷畻娉曘傝繖涓粨璁哄悗闈㈢粡甯哥敤銆傛垜浠皢鍦ㄨ綆楀嚑浣曢儴鍒嗕婦 涓澶у爢綾諱技鐨勪緥瀛愩?br>    濡傛灉浣犵涓嬈¤鍒拌繖涔堣寮傜殑綆楁硶錛屼綘鍙兘浼氬<a target="_blank"><strong> <font color="#618898">榪欎釜</font></strong> </a>鎰熷叴瓚c? 鍒嗘不鏄掑綊鐨勪竴縐嶅簲鐢ㄣ傝繖鏄垜浠涓嬈℃帴瑙﹂掑綊榪愮畻銆備笅闈㈣鐨勫揩閫熸帓搴忎篃鏄敤鐨勯掑綊鐨勬濇兂銆傞掑綊紼嬪簭鐨勫鏉傚害鍒嗘瀽閫氬父鍜屼笂闈竴鏍鳳紝涓誨畾鐞?Master Theory)鍙互綆鍖栬繖涓垎鏋愯繃紼嬨備富瀹氱悊鍜屾湰鏂囧唴瀹圭寰楀お榪滐紝鎴戜滑浠ュ悗涔熶笉浼氱敤瀹冿紝鍥犳鎴戜滑涓嶄粙緇嶅畠錛屽ぇ瀹跺彲浠ヨ嚜宸卞幓鏌ャ傛湁涓悕璇嶅湪榪欓噷鐨勮瘽鎵懼涔?fàn)璧? 鏂欏皢鍙樺緱闈炲父瀹規(guī)槗錛屾垜鏈鎬曠殑灝辨槸涓涓笢瑗夸笉鐭ラ亾鍙粈涔堝悕瀛楋紝鍗婂ぉ鎵句笉鍒拌祫鏂欍?br><br>    褰掑茍鎺掑簭鏈変竴涓湁瓚g殑鍓駭鍝併傚埄鐢ㄥ綊騫舵帓搴忚兘澶熷湪 O(nlogn)鐨勬椂闂撮噷璁$畻鍑虹粰瀹氬簭鍒楅噷閫嗗簭瀵圭殑涓暟銆備綘鍙互鐢ㄤ換浣曚竴縐嶅鉤琛′簩鍙夋爲(wèi)鏉ュ畬鎴愯繖涓搷浣滐紝浣嗙敤褰掑茍鎺掑簭緇熻閫嗗簭瀵規(guī)洿鏂逛究銆傛垜浠璁洪嗗簭瀵逛竴鑸? 鏄鐨勪竴涓帓鍒椾腑鐨勯嗗簭瀵癸紝鍥犳榪欓噷鎴戜滑鍋囪鎵鏈夋暟涓嶇浉鍚屻傚亣濡傛垜浠兂瑕佹暟1, 6, 3, 2, 5, 4涓湁澶氬皯涓嗗簭瀵癸紝鎴戜滑棣栧厛鎶婅繖涓暟鍒楀垎涓哄乏鍙充袱孌點傞偅涔堜竴涓嗗簭瀵瑰彧鍙兘鏈変笁縐嶆儏鍐碉細涓や釜鏁伴兘鍦ㄥ乏杈癸紝涓や釜鏁伴兘鍦ㄥ彸杈癸紝涓涓湪宸︿竴涓湪鍙熾傚湪宸﹀彸涓ゆ 鍒嗗埆澶勭悊瀹屽悗錛岀嚎鎬у悎騫剁殑榪囩▼涓垜浠彲浠ラ『渚跨畻鍑烘墍鏈夌涓夌鎯呭喌鐨勯嗗簭瀵規(guī)湁澶氬皯涓傛崲鍙ヨ瘽璇達紝鎴戜滑鑳藉湪綰挎х殑鏃墮棿閲岀粺璁″嚭A闃熷垪鐨勬煇涓暟姣擝闃熷垪鐨勬煇涓暟 澶ф湁澶氬皯縐嶆儏鍐點?br><br>A闃熷垪錛? 3 6         A闃熷垪錛?s>1</s> 3 6         A闃熷垪錛?s>1</s> 3 6         A闃熷垪錛?s>1 3</s> 6         A闃熷垪錛?s>1 3</s> 6<br>B闃熷垪錛? 4 5   ==>   B闃熷垪錛? 4 5   ==>   B闃熷垪錛?s>2</s> 4 5   ==>   B闃熷垪錛?s>2</s> 4 5   ==>   B闃熷垪錛?s>2 4</s> 5   ……<br>杈? 鍑猴細               杈撳嚭錛?              杈撳嚭錛? 2            杈撳嚭錛? 2 3          杈撳嚭錛? 2 3 4<br><br>    姣忎竴嬈′粠B闃熷垪鍙栧嚭涓涓暟鏃訛紝鎴戜滑灝辯煡閬撲簡鍦ˋ闃熷垪涓湁澶氬皯涓暟姣擝 闃熷垪鐨勮繖涓暟澶э紝瀹冪瓑浜嶢闃熷垪鐜板湪榪樺墿鐨勬暟鐨勪釜鏁般傛瘮濡傦紝褰撴垜浠粠B闃熷垪涓彇鍑?鏃訛紝鎴戜滑鍚屾椂鐭ラ亾浜咥闃熷垪鐨?鍜?涓や釜鏁版瘮2澶с傚湪鍚堝茍鎿嶄綔涓垜浠笉鏂洿 鏂癆闃熷垪涓繕鍓╁嚑涓暟錛屽湪姣忔浠嶣闃熷垪涓彇鍑轟竴涓暟鏃舵妸褰撳墠A闃熷垪鍓╃殑鏁扮洰鍔犺繘鏈緇堢瓟妗堥噷銆傝繖鏍鋒垜浠畻鍑轟簡鎵鏈?#8220;澶х殑鏁板湪鍓嶄竴鍗婏紝灝忕殑鏁板湪鍚庝竴鍗?#8221;鐨勬儏 鍐碉紝鍏朵綑鎯呭喌涓嬬殑閫嗗簭瀵瑰湪榪欎箣鍓嶅凡緇忚閫掑綊鍦扮畻榪囦簡銆?br><br>============================鍗庝附鐨勫垎鍓? 綰?===========================<br><br>    鍫嗘帓搴?Heap Sort)鍒╃敤浜嗗爢(Heap)榪欑鏁版嵁緇撴瀯錛?a target="_blank"><strong> <font color="#618898">浠涔堟槸鍫嗭紵</font></strong> </a>錛夈? 鍫嗙殑鎻掑叆鎿嶄綔鏄鉤鍧囧父鏁扮殑錛岃屽垹闄や竴涓牴鑺傜偣闇瑕佽姳璐筄(log n)鐨勬椂闂淬傚洜姝わ紝瀹屾垚鍫嗘帓搴忛渶瑕佺嚎鎬ф椂闂村緩绔嬪爢錛堟妸鎵鏈夊厓绱犱緷嬈℃彃鍏ヤ竴涓爢錛夛紝鐒跺悗鐢ㄦ誨叡O(jiān)(nlogn)鐨勬椂闂翠笉鏂彇鍑烘渶灝忕殑閭d釜鏁般傚彧瑕佸爢浼氭悶錛屽爢 鎺掑簭灝變細鎼炪傚爢鍦ㄩ偅綃囨棩蹇楅噷鏈夎緇嗙殑璇存槑錛屽洜姝よ繖閲屼笉閲嶅璇翠簡銆?br><br>============================鍗庝附鐨勫垎鍓? 綰?===========================<br><br>    蹇熸帓搴?Quick Sort)涔熷簲鐢ㄤ簡閫掑綊鐨勬濇兂銆傛垜浠兂瑕佹妸緇欏畾搴忓垪鍒嗘垚涓ゆ錛屽茍瀵硅繖涓ゆ鍒嗗埆榪涜鎺掑簭銆備竴縐嶄笉閿欑殑鎯蟲硶鏄紝閫夊彇涓涓暟浣滀負“鍏抽敭瀛?#8221;錛屽茍鎶婂叾瀹冩暟鍒嗗壊涓轟袱 閮ㄥ垎錛屾妸鎵鏈夊皬浜庡叧閿瓧鐨勬暟閮芥斁鍦ㄥ叧閿瓧鐨勫乏杈癸紝澶т簬鍏抽敭瀛楃殑閮芥斁鍦ㄥ彸杈癸紝鐒跺悗閫掑綊鍦板宸﹁竟鍜屽彸杈硅繘琛屾帓搴忋傛妸璇ュ尯闂村唴鐨勬墍鏈夋暟渚濇涓庡叧閿瓧姣旇緝錛屾垜浠氨 鍙互鍦ㄧ嚎鎬х殑鏃墮棿閲屽畬鎴愬垎鍓茬殑鎿嶄綔銆傚畬鎴愬垎鍓叉搷浣滄湁寰堝鏈夋妧宸фх殑瀹炵幇鏂規(guī)硶錛屾瘮濡傛渶甯哥敤鐨勪竴縐嶆槸瀹氫箟涓や釜鎸囬拡錛屼竴涓粠鍓嶅線鍚庢壘鎵懼埌姣斿叧閿瓧澶х殑錛屼竴涓粠鍚? 寰鍓嶆壘鍒版瘮鍏抽敭瀛楀皬鐨勶紝鐒跺悗涓や釜鎸囬拡瀵瑰簲鐨勫厓绱犱氦鎹綅緗茍緇х畫縐誨姩鎸囬拡閲嶅鍒氭墠鐨勮繃紼嬨傝繖鍙槸澶ц嚧鐨勬柟娉曪紝鍏蜂綋鐨勫疄鐜拌繕鏈夊緢澶氱粏鑺傞棶棰樸傚揩閫熸帓搴忔槸鎴戜滑鏈 甯哥敤鐨勪唬鐮佷箣涓錛岀綉涓婄殑蹇熸帓搴忎唬鐮佷簲鑺卞叓闂紝鍚勭璇█錛屽悇縐嶉鏍肩殑閮芥湁銆傚ぇ瀹跺彲浠ラ殢渚挎壘涓涓潵鐪嬬湅錛屾垜璇磋繃浜嗘垜浠綆楁硶浣嗕笉璁插浣曞疄鐜般侼OIp寰堢畝 鍗曪紝寰堝浜篘OIp鍓嶅氨鑳屼簡涓涓揩閫熸帓搴忎唬鐮佸氨涓婃垬鍦轟簡銆傚綋鏃舵垜鎶婂揩閫熸帓搴忚儗瀹屼簡錛屾姄绱ф椂闂磋繕欏轟究鑳屼簡涓涓嬪巻鍙詫紝鍏嶅緱鏅氫笂鍚啓鍙堜笉鍙婃牸銆?br>    涓? 鍍忓綊騫舵帓搴忥紝蹇熸帓搴忕殑鏃墮棿澶嶆潅搴﹀緢闅捐綆椼傛垜浠彲浠ョ湅鍒幫紝褰掑茍鎺掑簭鐨勫鏉傚害鏈鍧忔儏鍐典笅涔熸槸O(nlogn)鐨勶紝鑰屽揩閫熸帓搴忕殑鏈鍧忔儏鍐墊槸O(n^2)鐨勩? 濡傛灉姣忎竴嬈¢夌殑鍏抽敭瀛楅兘鏄綋鍓嶅尯闂撮噷鏈澶э紙鎴栨渶灝忥級鐨勬暟錛岄偅涔堣繖鏍峰皢浣垮緱姣忎竴嬈$殑瑙勬ā鍙噺灝忎竴涓暟錛岃繖鍜屾彃鍏ユ帓搴忋侀夋嫨鎺掑簭絳夊鉤鏂圭駭鎺掑簭娌℃湁鍖哄埆銆傝繖縐嶆儏 鍐典笉鏄笉鍙兘鍙戠敓銆傚鏋滀綘姣忔閫夋嫨鍏抽敭瀛楅兘鏄夋嫨鐨勮鍖洪棿鐨勭涓涓暟錛岃岀粰浣犵殑鏁版嵁鎭板ソ鍙堟槸宸茬粡鏈夊簭鐨勶紝閭d綘鐨勫揩閫熸帓搴忓氨瀹岃泲浜嗐傛樉鐒訛紝鏈濂芥儏鍐墊槸姣忎竴嬈? 閫夌殑鏁版濂藉氨鏄腑浣嶆暟錛岃繖灝嗘妸璇ュ尯闂村鉤鍒嗕負涓ゆ錛屽鏉傚害鍜屽墠闈㈣璁虹殑褰掑茍鎺掑簭涓妯′竴鏍楓傛牴鎹繖涓鐐癸紝蹇熸帓搴忔湁涓浜涘父鐢ㄧ殑浼樺寲銆傛瘮濡傦紝鎴戜滑緇忓父浠庢暟鍒椾腑闅? 鏈哄彇涓涓暟褰撲綔鏄叧閿瓧錛堣屼笉鏄瘡嬈℃繪槸鍙栧浐瀹氫綅緗笂鐨勬暟錛夛紝浠庤屽敖鍙兘閬垮厤鏌愪簺鐗規(guī)畩鐨勬暟鎹墍瀵艱嚧鐨勪綆鏁堛傛洿濂界殑鍋氭硶鏄殢鏈哄彇涓変釜鏁板茍閫夋嫨榪欎笁涓暟鐨勪腑浣? 鏁頒綔涓哄叧閿瓧銆傝屽涓変釜鏁扮殑闅忔満鍙栧煎弽鑰屽皢鑺辮垂鏇村鐨勬椂闂達紝鍥犳鎴戜滑鐨勮繖涓変釜鏁板彲浠ュ垎鍒彇鏁板垪鐨勫ご涓涓暟銆佹湯涓涓暟鍜屾涓棿閭d釜鏁般傚彟澶栵紝褰撻掑綊鍒頒簡涓瀹? 娣卞害鍙戠幇褰撳墠鍖洪棿閲岀殑鏁板彧鏈夊嚑涓垨鍗佸嚑涓椂錛岀戶緇掑綊涓嬪幓鍙嶈岃垂鏃訛紝涓嶅榪斿洖鎻掑叆鎺掑簭鍚庣殑緇撴灉銆傝繖縐嶆柟娉曞悓鏃墮伩鍏嶄簡褰撴暟瀛楀お灝戞椂閫掑綊鎿嶄綔鍑洪敊鐨勫彲鑳姐?br><br>    涓? 闈㈡垜浠瘉鏄庯紝蹇熸帓搴忕畻娉曠殑騫沖潎澶嶆潅搴︿負O(nlogn)銆備笉鍚岀殑涔︿笂鏈変笉鍚岀殑瑙i噴鏂規(guī)硶錛岃繖閲屾垜閫夌敤綆楁硶瀵艱涓婄殑璁叉硶銆傚畠鏇存湁鎶宸фт竴浜涳紝鏇存湁瓚d竴浜涳紝闇 瑕佽漿鍑犱釜寮墠鑳芥兂鏄庣櫧銆?br>    鐪嬩竴鐪嬪揩閫熸帓搴忕殑浠g爜銆傛濡傛垜浠彁鍒拌繃鐨勯偅縐嶅垎鍓叉柟娉曪紝紼嬪簭鍦ㄧ粡榪囪嫢騫叉涓庡叧閿瓧鐨勬瘮杈冨悗鎵嶈繘琛屼竴嬈′氦鎹紝鍥犳姣? 杈冪殑嬈℃暟姣斾氦鎹㈡鏁版洿澶氥傛垜浠氳繃璇佹槑涓嬈″揩閫熸帓搴忎腑鍏冪礌涔嬮棿鐨勬瘮杈冩鏁板鉤鍧囦負O(nlogn)鏉ヨ鏄庡揩閫熸帓搴忕畻娉曠殑騫沖潎澶嶆潅搴︺傝瘉鏄庣殑鍏抽敭鍦ㄤ簬錛屾垜浠渶 瑕佺畻鍑烘煇涓や釜鍏冪礌鍦ㄦ暣涓畻娉曡繃紼嬩腑榪涜榪囨瘮杈冪殑姒傜巼銆?br>    鎴戜滑涓句竴涓緥瀛愩傚亣濡傜粰鍑轟簡1鍒?0榪?0涓暟錛岀涓嬈¢夋嫨鍏抽敭瀛?灝嗗畠浠垎鎴愪簡 {1,2,3,4,5,6}鍜寋8,9,10}涓ら儴鍒嗭紝閫掑綊宸﹁竟鏃舵垜浠夋嫨浜?浣滀負鍏抽敭瀛楋紝浣垮緱宸﹂儴鍒嗗張琚垎鍓蹭負{1,2}鍜寋4,5,6}銆傛垜浠湅鍒幫紝 鏁板瓧7涓庡叾瀹冩墍鏈夋暟閮芥瘮杈冭繃涓嬈★紝榪欐牱鎵嶈兘瀹炵幇鍒嗗壊鎿嶄綔銆傚悓鏍峰湴錛?鍒?榪?涓暟閮介渶瑕佷笌3榪涜涓嬈℃瘮杈冿紙闄や簡瀹冩湰韜箣澶栵級銆傜劧鑰岋紝3鍜?鍐充笉鍙兘鐩鎬簰姣? 杈冭繃錛?鍜?涔熶笉鍙兘榪涜榪囨瘮杈冿紝鍥犱負絎竴嬈″嚭鐜板湪3鍜?錛?鍜?涔嬮棿鐨勫叧閿瓧鎶婂畠浠垎鍓插紑浜嗐備篃灝辨槸璇達紝涓や釜鏁癆(i)鍜孉(j)姣旇緝榪囷紝褰撲笖浠呭綋絎竴 涓弧瓚矨(i)<=x<=A(j)鐨勫叧閿瓧x鎭板ソ灝辨槸A(i)鎴朅(j) 錛堝亣璁続(i)姣擜(j)灝忥級銆傛垜浠О鎺掑簭鍚庣i灝忕殑鏁頒負Z(i)錛屽亣璁緄<j錛岄偅涔堢涓嬈″嚭鐜板湪Z(i)鍜孼(j)涔嬮棿鐨勫叧閿瓧鎭板ソ灝辨槸Z(i) 鎴朲(j)鐨勬鐜囦負2/(j-i+1)錛岃繖鏄洜涓哄綋Z(i)鍜孼(j)涔嬮棿榪樹笉鏇炬湁榪囧叧閿瓧鏃訛紝Z(i)鍜孼(j)澶勪簬鍚屼竴涓緟鍒嗗壊鐨勫尯闂達紝涓嶇榪欎釜鍖洪棿 鏈夊澶э紝涓嶇閫掑綊鍒板摢閲屼簡錛屽叧閿瓧鐨勯夋嫨鎬繪槸闅忔満鐨勩傛垜浠緱鍒幫紝Z(i)鍜孼(j)鍦ㄤ竴嬈″揩閫熸帓搴忎腑鏇劇粡姣旇緝榪囩殑姒傜巼涓?/(j-i+1)銆?br>    鐜? 鍦ㄦ湁鍥涗釜鏁幫紝2,3,5,7銆傛帓搴忔椂錛岀浉閭?cè)潥勪袱涓暟鑲畾閮借姣旇緝杩囧Q?鍜?銆?鍜?閮芥湁2/3鐨勬鐜囪姣旇緝榪囷紝2鍜?涔嬮棿琚瘮杈冭繃鏈?/4鐨勫彲鑳姐備篃灝辨槸 璇達紝濡傛灉瀵硅繖鍥涗釜鏁板仛12嬈″揩閫熸帓搴忥紝閭d箞2鍜?銆?鍜?銆?鍜?涔嬮棿涓鍏辨瘮杈冧簡12*3=36嬈★紝2鍜?銆?鍜?涔嬮棿鎬誨叡姣旇緝浜?*2=16嬈★紝2鍜? 涔嬮棿騫沖潎姣旇緝浜?嬈°傞偅涔堬紝12嬈℃帓搴忎腑鎬葷殑姣旇緝嬈℃暟鏈熸湜鍊間負36+16+6=58銆傛垜浠彲浠ヨ綆楀嚭鍗曟鐨勫揩閫熸帓搴忓鉤鍧囨瘮杈冧簡澶氬皯嬈★細58/12=29 /6銆傚叾瀹烇紝瀹冨氨絳変簬6欏規(guī)鐜囦箣鍜岋紝1+1+1+2/3+2/3+2/4=29/6銆傝繖鍏跺疄鏄笌鏈熸湜鍊肩浉鍏崇殑涓涓叕寮忋?br>    鍚屾牱鍦幫紝濡傛灉鏈塶 涓暟錛岄偅涔堝揩閫熸帓搴忓鉤鍧囬渶瑕佺殑姣旇緝嬈℃暟鍙互鍐欐垚涓嬮潰鐨勫紡瀛愩備護k=j-i錛屾垜浠兘澶熸渶緇堝緱鍒版瘮杈冩鏁扮殑鏈熸湜鍊間負O(nlogn)銆?br>   <img alt="" src="http://www.matrix67.com/blogimage/200704061.gif" border="0"><br>    榪? 閲岀敤鍒頒簡涓涓煡璇嗭細1+1/2+1/3+…+1/n涓巐og n澧為暱閫熷害鐩稿悓錛屽嵆Σ(1/n)=Θ(log n)銆傚畠鐨勮瘉鏄庢斁鍦ㄦ湰鏂囩殑鏈鍚庛?br><br>    鍦? 涓夌O(nlogn)鐨勬帓搴忕畻娉曚腑錛屽揩閫熸帓搴忕殑鐞嗚澶嶆潅搴︽渶涓嶇悊鎯籌紝闄や簡瀹冧互澶栦粖澶╄鐨勫彟澶栦袱縐嶇畻娉曢兘鏄互鏈鍧忔儏鍐礝(nlogn)鐨勫鏉傚害榪涜鎺掑簭銆備絾 瀹炶返涓婄湅蹇熸帓搴忔晥鐜囨渶楂橈紙涓嶇劧涓哄暐鍙揩閫熸帓搴忓憿錛夛紝鍘熷洜鍦ㄤ簬蹇熸帓搴忕殑浠g爜姣斿叾瀹冨悓澶嶆潅搴︾殑綆楁硶鏇寸畝媧侊紝甯告暟鏃墮棿鏇村皬銆?br><br>    蹇熸帓 搴忎篃鏈変竴涓湁瓚g殑鍓駭鍝侊細蹇熼夋嫨緇欏嚭鐨勪竴浜涙暟涓k灝忕殑鏁般備竴縐嶇畝鍗曠殑鏂規(guī)硶鏄嬌鐢ㄤ笂榪頒換涓縐峅(nlogn)鐨勭畻娉曞榪欎簺鏁拌繘琛屾帓搴忓茍榪斿洖鎺掑簭鍚庢暟緇勭殑 絎琸涓厓绱犮傚揩閫熼夋嫨(Quick Select)綆楁硶鍙互鍦ㄥ鉤鍧嘜(n)鐨勬椂闂村畬鎴愯繖涓鎿嶄綔銆傚畠鐨勬渶鍧忔儏鍐靛悓蹇熸帓搴忎竴鏍鳳紝涔熸槸O(n^2)銆傚湪姣忎竴嬈″垎鍓插悗錛屾垜浠兘鍙互鐭ラ亾姣斿叧閿瓧灝忕殑 鏁版湁澶氬皯涓紝浠庤岀‘瀹氫簡鍏抽敭瀛楀湪鎵鏈夋暟涓槸絎嚑灝忕殑銆傛垜浠亣璁懼叧閿瓧鏄m灝忋傚鏋渒=m錛岄偅涔堟垜浠氨鎵懼埌浜嗙瓟妗堚斺旂k灝忓厓绱犲嵆璇ュ叧閿瓧銆傚惁鍒欙紝鎴戜滑閫? 褰掑湴璁$畻宸﹁竟鎴栬呭彸杈癸細褰搆<m鏃訛紝鎴戜滑閫掑綊鍦板鎵懼乏杈圭殑鍏冪礌涓k灝忕殑錛涘綋k>m鏃訛紝鎴戜滑閫掑綊鍦板鎵懼彸杈圭殑鍏冪礌涓k-m灝忕殑鏁般傜敱浜庢垜浠? 涓嶈冭檻鎵鏈夌殑鏁扮殑欏哄簭錛屽彧闇瑕侀掑綊鍏朵腑鐨勪竴杈癸紝鍥犳澶嶆潅搴﹀ぇ澶ч檷浣庛傚鏉傚害騫沖潎綰挎э紝鎴戜滑涓嶅啀鍏蜂綋璇佷簡銆?br>    榪樻湁涓縐嶇畻娉曞彲浠ュ湪鏈鍧廜(n) 鐨勬椂闂撮噷鎵懼嚭絎琸灝忓厓绱犮傞偅鏄垜瑙佽繃鐨勬墍鏈夌畻娉曚腑鏈娌℃湁瀹炵敤浠峰肩殑綆楁硶銆傞偅涓狾(n)鍙湁鐞嗚浠峰箋?br><br>============================ 鍗庝附鐨勫垎鍓茬嚎============================<br><br>    鎴戜滑鍓嶉潰璇佹槑榪囷紝浠呬粎渚濋潬浜ゆ崲鐩擱偦鍏冪礌鐨勬搷浣滐紝澶嶆潅搴﹀彧 鑳借揪鍒癘(n^2)銆備簬鏄紝浜轟滑灝濊瘯浜ゆ崲璺濈鏇磋繙鐨勫厓绱犮傚綋浜轟滑鍙戠幇O(nlogn)鐨勬帓搴忕畻娉曚技涔庡凡緇忔槸鏋侀檺鐨勬椂鍊欙紝鍙堟槸浠涔堝埗綰︿簡澶嶆潅搴︾殑涓嬬晫鍛紵鎴? 浠皢瑕佽璁虹殑鏄洿搴曞眰鐨勪笢瑗褲傛垜浠粛鐒跺亣璁炬墍鏈夌殑鏁伴兘涓嶇浉絳夈?br>    鎴戜滑鎬繪槸涓嶆柇鍦ㄦ暟涓庢暟涔嬮棿榪涜姣旇緝銆備綘鍙互璇曡瘯錛屽彧鐢?嬈℃瘮杈冪粷瀵逛笉鍙兘緇? 4涓暟鎺掑嚭欏哄簭銆傛瘡澶氳繘琛屼竴嬈℃瘮杈冩垜浠氨鍙堝鐭ラ亾浜嗕竴涓ぇ灝忓叧緋伙紝浠?嬈℃瘮杈冧腑涓鍏卞彲浠ヨ幏鐭?涓ぇ灝忓叧緋匯?涓ぇ灝忓叧緋誨叡鏈?^4=16縐嶇粍鍚堟柟寮忥紝鑰? 涓暟鐨勯『搴忎竴鍏辨湁4!=24縐嶃備篃灝辨槸璇達紝4嬈℃瘮杈冨彲鑳藉嚭鐜扮殑緇撴灉鏁扮洰涓嶈凍浠ュ尯鍒?4縐嶅彲鑳界殑欏哄簭銆傛洿涓鑸湴錛岀粰浣爊涓暟鍙綘鎺掑簭錛屽彲鑳界殑絳旀鍏辨湁n! 涓紝k嬈℃瘮杈冨彧鑳藉尯鍒?^k縐嶅彲鑳斤紝浜庢槸鍙湁2^k>=n!鏃舵墠鏈夊彲鑳芥帓鍑洪『搴忋傜瓑鍙蜂袱杈瑰彇瀵規(guī)暟錛屼簬鏄紝緇檔涓暟鎺掑簭鑷沖皯闇瑕乴og2(n!)嬈°? 娉ㄦ剰錛屾垜浠茍娌℃湁璇存槑涓瀹氳兘閫氳繃log2(n!)嬈℃瘮杈冩帓鍑洪『搴忋傝櫧鐒?^5=32瓚呰繃浜?!錛屼絾榪欎笉瓚充互璇存槑5嬈℃瘮杈冧竴瀹氳凍澶熴傚浣曠敤5嬈℃瘮杈冪‘瀹?涓? 鏁扮殑澶у皬鍏崇郴榪橀渶瑕佽繘涓姝ョ爺絀躲傜涓嬈′緥澶栧彂鐢熷湪n=12鐨勬椂鍊欙紝铏界劧2^29>12!錛屼絾鐜板凡璇佹槑緇?2涓暟鎺掑簭鏈灝戦渶瑕?0嬈℃瘮杈冦傛垜浠彲浠ヨ瘉 鏄巐og(n!)鐨勫闀塊熷害涓巒logn鐩稿悓錛屽嵆log(n!)=Θ(nlogn)銆傝繖鏄帓搴忔墍闇瑕佺殑鏈灝戠殑姣旇緝嬈℃暟錛屽畠緇欏嚭浜嗘帓搴忓鏉傚害鐨勪竴涓笅鐣屻? log(n!)=Θ(nlogn)鐨勮瘉鏄庝篃闄勫湪鏈枃鏈鍚庛?br>    <a target="_blank"><strong> <font color="#618898">榪欑瘒鏃ュ織</font></strong> </a>鐨勭 涓夐涓瘉鏄巐og2(N)鏄渶浼樻椂鐢ㄥ埌浜嗗嚑涔庣浉鍚岀殑鏂規(guī)硶銆傞偅縐?#8220;鐢ㄥぉ騫崇О鍑洪噸閲忎笉鍚岀殑閭d釜鐞冭嚦灝戣縐板嚑嬈?#8221;涓綾婚鐩篃鍙互鐢ㄨ繖縐嶆柟娉曟潵瑙e喅銆備簨瀹炰笂錛岃繖閲? 鏈変竴鏁村鐨勭悊璁猴紝瀹冨彨鍋氫俊鎭銆備俊鎭鏄敱棣欏啘(Shannon)鎻愬嚭鐨勩備粬鐢ㄥ鏁版潵琛ㄧず淇℃伅閲忥紝鐢ㄧ喌鏉ヨ〃紺哄彲鑳界殑鎯呭喌鐨勯殢鏈烘э紝閫氳繃榪愮畻鍙互鐭ラ亾浣犵洰鍓? 寰楀埌鐨勪俊鎭兘澶熸庢牱褰卞搷鏈緇堢粨鏋滅殑紜畾銆傚鏋滄垜浠殑淇℃伅閲忔槸浠?涓哄簳鐨勶紝閭d俊鎭灝卞彉鎴愪俊鎭浜嗐備粠鏍規(guī)湰涓婅錛岃綆楁満鐨勪竴鍒囦俊鎭氨鏄互2涓哄簳鐨勪俊鎭噺 (bits=<u>bi</u>nary digi<u>ts</u>)錛屽洜姝ゆ垜浠父璇撮鍐滄槸鏁板瓧閫氫俊涔嬬埗銆備俊鎭鍜岀儹鍔涘鍏崇郴瀵嗗垏錛屾瘮濡傜喌鐨勬蹇墊槸鐩存帴 浠庣儹鍔涘鐨勭喌瀹氫箟寮曠敵榪囨潵鐨勩傚拰榪欎釜鏈夊叧鐨勪笢瑗垮凡緇忎弗閲嶅亸棰樹簡錛岃繖閲屼笉璇翠簡錛屾湁鍏磋叮鍙互鍘葷湅銆婁俊鎭涓庣紪鐮佺悊璁恒嬨傛垜瀵硅繖涓篃寰堟湁鍏磋叮錛屽崐鎳備笉鎳傜殑錛屽緢鎯? 浜嗚В鏇村鐨勪笢瑗匡紝鏈夊叴瓚g殑鍚屽織涓嶅Θ鍔犲叆璁ㄨ銆傜墿鐞嗗鐪熺殑寰堢濂囷紝鍒╃敤鐗╃悊瀛﹀彲浠ヨВ鍐沖緢澶氱函鏁板闂錛屾垜鏈夋椂闂寸殑璇濆彲浠ヤ婦涓浜涗緥瀛愩傛垜浠栧鐨勪負鍟ヨ閫夋枃縐? 鍛€?br>    鍚庨潰灝嗕粙緇嶇殑涓夌鎺掑簭鏄嚎鎬ф椂闂村鏉傚害錛屽洜涓猴紝瀹冧滑鎺掑簭鏃舵牴鏈笉鏄氳繃浜掔浉姣旇緝鏉ョ‘瀹氬ぇ灝忓叧緋葷殑銆?br><br><br>闄? 1錛?#931;(1/n)=Θ(log n)鐨勮瘉鏄?br>    棣栧厛鎴戜滑璇佹槑錛?#931;(1/n)=O(log n)銆傚湪寮忓瓙1+1/2+1/3+1/4+1/5+…涓紝鎴戜滑鎶?/3鍙樻垚1/2錛屼嬌寰椾袱涓?/2鍔犺搗鏉ュ噾鎴愪竴涓?錛涘啀鎶?/5,1/6鍜?/7鍏ㄩ儴鍙樻垚 1/4錛岃繖鏍峰洓涓?/4鍔犺搗鏉ュ張鏄竴涓?銆傛垜浠妸鎵鏈?/2^k鐨勫悗闈?^k-1欏瑰叏閮ㄦ墿澶т負1/2^k錛屼嬌寰楄繖2^k涓垎寮忓姞璧鋒潵鏄竴涓?銆傜幇 鍦紝1+1/2+…+1/n閲岄潰浜х敓浜嗗嚑涓?鍛紵鎴戜滑鍙渶瑕佺湅灝忎簬n鐨勬暟鏈夊灝戜釜2鐨勫箓鍗沖彲銆傛樉鐒訛紝緇忚繃鏁扮殑鎵╁ぇ鍚庡師寮忓悇欏規(guī)誨拰涓簂og n銆侽(logn)鏄?#931;(1/n)鐨勫鏉傚害涓婄晫銆?br>    鐒跺悗鎴戜滑璇佹槑錛?#931;(1/n)=Ω(log n)銆傚湪寮忓瓙1+1/2+1/3+1/4+1/5+…涓紝鎴戜滑鎶?/3鍙樻垚1/4錛屼嬌寰椾袱涓?/4鍔犺搗鏉ュ噾鎴愪竴涓?/2錛涘啀鎶?/5,1/6鍜?/7鍏ㄩ儴 鍙樻垚1/8錛岃繖鏍峰洓涓?/8鍔犺搗鏉ュ張鏄竴涓?/2銆傛垜浠妸鎵鏈?/2^k鐨勫墠闈?^k-1欏瑰叏閮ㄧ緝?yōu)畯湄?/2^k錛屼嬌寰楄繖2^k涓垎寮忓姞璧鋒潵鏄竴涓? /2銆傜幇鍦紝1+1/2+…+1/n閲岄潰浜х敓浜嗗嚑涓?/2鍛紵鎴戜滑鍙渶瑕佺湅灝忎簬n鐨勬暟鏈夊灝戜釜2鐨勫箓鍗沖彲銆傛樉鐒訛紝緇忚繃鏁扮殑緙╁皬鍚庡師寮忓悇欏規(guī)誨拰涓? /2*logn銆?#937;(logn)鏄?#931;(1/n)鐨勫鏉傚害涓嬬晫銆?br><br><br>闄?錛歭og(n!)=Θ(nlogn)鐨勮瘉鏄?br>    棣? 鍏堟垜浠瘉鏄庯紝log(n!)=O(nlogn)銆傛樉鐒秐!<n^n錛屼袱杈瑰彇瀵規(guī)暟鎴戜滑寰楀埌l(fā)og(n!)<log(n^n)錛岃? log(n^n)灝辯瓑浜巒logn銆傚洜姝わ紝O(nlogn)鏄痩og(n!)鐨勫鏉傚害涓婄晫銆?br>    鐒跺悗鎴戜滑璇? 鏄庯紝log(n!)=Ω(nlogn)銆俷!=n(n-1)(n-2)(n-3)….1錛屾妸鍓嶉潰涓鍗婄殑鍥犲瓙鍏ㄩ儴緙╁皬鍒皀/2錛屽悗闈竴鍗婂洜瀛愬叏閮ㄨ垗鍘伙紝鏄劇劧 鏈塶!>(n/2)^(n/2)銆備袱杈瑰彇瀵規(guī)暟錛宭og(n!)>(n/2)log(n/2)錛屽悗鑰呭嵆Ω(nlogn)銆傚洜 姝わ紝Ω(nlogn)鏄痩og(n!)鐨勫鏉傚害涓嬬晫銆?br><br>浠婂ぉ鍐欏埌榪欓噷浜嗭紝澶у甯繖鏍″鍝?br>Matrix67鍘熷垱<br>杞創(chuàng)璇鋒敞鏄庡嚭 澶?br><a title="Permanent link to 浠庨浂寮濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇嶏紙涓婏級" rel="bookmark"><u><font color="#800080">浠庨浂寮濮嬪綆楁硶錛氬崄縐嶆帓搴忕畻娉曚粙緇嶏紙涓嬶級</font></u></a><br>閭d箞錛屾湁浠涔堟柟娉曞彲浠ヤ笉鐢ㄦ瘮杈冨氨鑳芥帓 鍑洪『搴忓憿錛熷熷姪Hash琛ㄧ殑鎬濇兂錛屽鏁頒漢閮借兘鎯沖嚭榪欐牱涓縐嶆帓搴忕畻娉曟潵銆?br>    鎴戜滑鍋囪緇欏嚭鐨勬暟瀛楅兘鍦ㄤ竴瀹氳寖鍥翠腑錛岄偅涔堟垜浠氨鍙互寮涓涓寖鍥寸浉鍚? 鐨勬暟緇勶紝璁板綍榪欎釜鏁板瓧鏄惁鍑虹幇榪囥傜敱浜庢暟瀛楁湁鍙兘鏈夐噸澶嶏紝鍥犳Hash琛ㄧ殑姒傚康闇瑕佹墿灞曪紝鎴戜滑闇瑕佹妸鏁扮粍綾誨瀷鏀規(guī)垚鏁村瀷錛岀敤鏉ヨ〃紺烘瘡涓暟鍑虹幇鐨勬鏁般?br>    鐪? 榪欐牱涓涓緥瀛愶紝鍋囧鎴戜滑瑕佸鏁板垪3 1 4 1 5 9 2 6 5 3 5 9榪涜鎺掑簭銆傜敱浜庣粰瀹氭暟瀛楁瘡涓涓兘灝忎簬10錛屽洜姝ゆ垜浠紑涓涓?鍒?鐨勬暣鍨嬫暟緇凾[i]錛岃褰曟瘡涓涓暟鍑虹幇浜嗗嚑嬈°傝鍒頒竴涓暟瀛梮錛屽氨鎶婂搴旂殑T[x]鍔? 涓銆?br><br>  A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 9<br>               +---+---+---+---+---+---+---+---+---+---+<br>      鏁? 瀛?i錛?| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |<br>               +---+---+---+---+---+---+---+---+---+---+<br>鍑虹幇嬈℃暟T[i]錛?| 0 | 2 | 1 | 2 | 1 | 3 | 1 | 0 | 0 | 2 |<br>               +---+---+---+---+---+---+---+---+---+---+<br><br>    鏈鍚庯紝鎴戜滑鐢ㄤ竴涓寚閽堜粠鍓? 寰鍚庢壂鎻忎竴閬嶏紝鎸夌収嬈″簭杈撳嚭0鍒?錛屾瘡涓暟鍑虹幇浜嗗嚑嬈″氨杈撳嚭鍑犱釜銆傚亣濡傜粰瀹氱殑鏁版槸n涓ぇ灝忎笉瓚呰繃m鐨勮嚜鐒舵暟錛屾樉鐒惰繖涓畻娉曠殑澶嶆潅搴︽槸O(m+n)鐨勩?br><br>    鎴? 鏇劇粡浠ヤ負錛岃繖灝辨槸綰挎ф椂闂存帓搴忎簡銆傚悗鏉ユ垜鍙戠幇鎴戦敊浜嗐傚啀鍚庢潵錛屾垜鍙戠幇鎴戞浘鐘殑閿欒鏄竴涓櫘閬嶇殑閿欒銆傚緢澶氫漢閮戒互涓轟笂闈㈢殑榪欎釜綆楁硶灝辨槸浼犺涓殑璁℃暟鎺掑簭銆傞棶 棰樺嚭鍦ㄥ摢閲屼簡錛熶負浠涔堝畠涓嶆槸綰挎ф椂闂寸殑鎺掑簭綆楁硶錛熷師鍥犳槸錛岃繖涓畻娉曟牴鏈笉鏄帓搴忕畻娉曪紝瀹冩牴鏈病鏈夊鍘熸暟鎹繘琛屾帓搴忋?br><br><br><strong> 闂? 棰樹竴錛氫負浠涔堣涓婅堪綆楁硶娌℃湁瀵規(guī)暟鎹繘琛屾帓搴忥紵</strong> <br>STOP! You should think for a while.<br><br>    鎴戜滑鐝湁寰堝MM銆傚拰韜珮鐩稿樊澶繙鐨凪M鍦ㄤ竴璧瘋偗瀹氬緢鍒壄錛? 鎺ヤ釜鍚婚兘瑕佸集鑵版墠琛岋紙<a target="_blank"><strong> <font color="#618898">灝忕尗</font></strong> </a>鐭浜嗭級銆備負姝わ紝鎴戝笇鏈涚粰鎴戜滑鐝殑MM鐨勮韓楂樻帓搴忋傛垜浠彮MM鐨勮韓楂橈紝 鍐嶇璋變篃娌℃湁瓚呰繃2綾崇殑錛岃繖寰堥傚悎鐢ㄦ垜浠垰鎵嶇殑綆楁硶銆傛垜浠湪榛戞澘涓婄敾涓涓?00鍒?00鐨勬暟緇勶紝MM渚濇鑷洕韜珮錛屾垜璐熻矗鐢?#8220;姝?#8221;瀛楃粺璁′漢鏁般傜粺璁″嚭鏉? 浜嗭紝浠庡皬鍒板ぇ渚濇涓?41, 143, 143, 147, 152, 153, …銆傝繖綆楀摢闂ㄥ瓙鎺掑簭錛熷氨涓鎺掓暟瀛楀鎴戞湁浠涔堢敤錛屾垜瑕佺煡閬撶殑鏄摢涓狹M鏈夊楂樸傛垜浠粎浠呮妸鍏冪礌鐨勫睘鎬у間粠灝忓埌澶у垪浜嗗嚭鏉ワ紝浣嗘垜浠病鏈夊鍏冪礌鏈韓榪涜鎺掑簭銆備篃 灝辨槸璇達紝鎴戜滑闇瑕佺煡閬撹緭鍑虹粨鏋滅殑姣忎釜鏁板煎搴斿師鏁版嵁鐨勫摢涓涓厓绱犮備笅鏂囨彁鍒扮殑“鎺掑簭綆楁硶鐨勭ǔ瀹氭?#8221;涔熷拰灞炴у間笌瀹為檯鍏冪礌鐨勫尯鍒湁鍏熾?br><br><br><strong> 闂? 棰樹簩錛氭庢牱灝嗙嚎鎬ф椂闂存帓搴忓悗鐨勮緭鍑虹粨鏋滆繕鍘熶負鍘熸暟鎹腑鐨勫厓绱狅紵</strong> <br>STOP! You should think for a while.<br><br>    鍚屾牱鍊熷姪Hash琛ㄧ殑鎬濇兂錛屾垜浠珛鍗蟲兂鍒頒簡綾諱技浜? 寮鏁e垪鐨勬柟娉曘傛垜浠敤閾捐〃鎶婂睘鎬у肩浉鍚岀殑鍏冪礌涓茶搗鏉ワ紝鎸傚湪瀵瑰簲鐨凾[i]涓娿傛瘡嬈¤鍒頒竴涓暟錛屽湪澧炲姞T[i]鐨勫悓鏃舵垜浠妸榪欎釜鍏冪礌鏀捐繘T[i]寤朵幾鍑哄幓鐨? 閾捐〃閲屻傝繖鏍鳳紝杈撳嚭緇撴灉鏃舵垜浠彲浠ユ柟渚垮湴鑾峰緱鍘熸暟鎹腑鐨勬墍鏈夊睘鎬у間負i鐨勫厓绱犮?br><br>  A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 9<br>               +---+---+---+---+---+---+---+---+---+---+<br>      鏁板瓧 i錛?| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |<br>               +---+---+---+---+---+---+---+---+---+---+<br>鍑虹幇嬈℃暟T[i]錛?| 0 | 2 | 1 | 2 | 1 | 3 | 1 | 0 | 0 | 2 |<br>               +---+o--+-o-+-o-+-o-+-o-+--o+---+---+-o-+<br>                    |    |   |   |   |    |          |<br>                 +--+  +-+   |   |   +-+  +---+      |<br>                 |     |   A[1]  |     |      |     A[6]<br>               A[2]  A[7]    |  A[3]  A[5]   A[8]    |<br>                 |           |         |            A[12]<br>               A[4]        A[10]      A[9]<br>                                       |<br>                                      A[11]<br><br>    褰? 璞″湴璇達紝鎴戜滑鍦ㄥ湴涓婃憜10涓《錛屾瘡涓《緙栦竴涓彿錛岀劧鍚庢妸鏁版嵁鍒嗛棬鍒被鏀懼湪鑷繁鎵灞炵殑妗墮噷銆傝繖縐嶆帓搴忕畻娉曞彨鍋氭《寮忔帓搴?Bucket Sort)銆傛湰鏂囨渶鍚庝綘灝嗙湅鍒版《寮忔帓搴忕殑鍙︿竴涓敤閫斻?br>    閾捐〃鍐欒搗鏉ユ瘮杈冮夯鐑︼紝涓鑸垜浠笉浣跨敤瀹冦傛垜浠湁鏇寸畝鍗曠殑鏂規(guī)硶銆?br><br><br><strong> 闂? 棰樹笁錛氬悓鏍鋒槸杈撳嚭鍏冪礌鏈韓錛屼綘鑳芥兂鍑轟笉鐢ㄩ摼琛ㄧ殑鍏跺畠綆楁硶涔堬紵</strong> <br>STOP! You should think for a while.<br><br>  A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 9<br>               +---+---+---+---+---+---+---+---+---+---+<br>      鏁板瓧 i錛?| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |<br>               +---+---+---+---+---+---+---+---+---+---+<br>鍑虹幇嬈℃暟T[i]錛?| 0 | 2 | 1 | 2 | 1 | 3 | 1 | 0 | 0 | 2 |<br>               +---+---+---+---+---+---+---+---+---+---+<br>淇敼鍚庣殑T[i]錛?| 0 | 2 | 3 | 5 | 6 | 9 | 10| 10| 10| 12|<br>               +---+---+---+---+---+---+---+---+---+---+<br><br>    鎵鏈夋暟閮借鍏ュ悗錛屾垜浠慨鏀? T[i]鏁扮粍鐨勫鹼紝浣垮緱T[i]琛ㄧず鏁板瓧i鍙兘鐨勬帓鍚嶇殑鏈澶у箋傛瘮濡傦紝1鏈宸帓鍚嶇浜岋紝3鏈榪滃彲浠ユ帓鍒扮浜斻俆鏁扮粍鐨勬渶鍚庝竴涓暟搴旇絳変簬杈撳叆鏁版嵁鐨勬暟瀛椾釜 鏁般備慨鏀筎鏁扮粍鐨勬搷浣滃彲浠ョ敤涓嬈$嚎鎬х殑鎵弿绱姞瀹屾垚銆?br>    鎴戜滑榪橀渶瑕佸噯澶囦竴涓緭鍑烘暟緇勩傜劧鍚庯紝鎴戜滑浠庡悗寰鍓嶆壂鎻廇鏁扮粍錛屼緷鐓鏁扮粍鐨勬寚紺轟緷嬈? 鎶婂師鏁版嵁鐨勫厓绱犵洿鎺ユ斁鍒拌緭鍑烘暟緇勪腑錛屽悓鏃禩[i]鐨勫煎噺涓銆備箣鎵浠ヤ粠鍚庡線鍓嶆壂鎻廇鏁扮粍錛屾槸鍥犱負榪欐牱杈撳嚭緇撴灉鎵嶆槸紼沖畾鐨勩傛垜浠涓涓帓搴忕畻娉曟槸紼沖畾鐨? (Stable)錛屽綋綆楁硶婊¤凍榪欐牱鐨勬ц川錛氬睘鎬у肩浉鍚岀殑鍏冪礌錛屾帓搴忓悗鍓嶅悗浣嶇疆涓嶅彉錛屾湰鏉ュ湪鍓嶉潰鐨勭幇鍦ㄤ粛鐒跺湪鍓嶉潰銆備笉瑕佽寰楁帓搴忕畻娉曟槸鍚﹀叿鏈夌ǔ瀹氭т技涔庡叧緋? 涓嶅ぇ錛屾帓搴忕殑紼沖畾鎬у湪涓嬫枃鐨勬煇涓棶棰樹腑灝嗗彉寰楅潪甯擱噸瑕併備綘鍙互鍊掑洖鍘葷湅鐪嬪墠闈㈣鐨勪竷縐嶆帓搴忕畻娉曞摢浜涙槸紼沖畾鐨勩?br>    渚嬪瓙涓紝A鏁扮粍鏈鍚庝竴涓暟9 鎵瀵瑰簲鐨凾[9]=12錛屾垜浠洿鎺ユ妸9鏀懼湪寰呰緭鍑哄簭鍒椾腑鐨勭12涓綅緗紝鐒跺悗T[9]鍙樻垚11錛堣繖鏍蜂笅涓嬈″啀鍑虹幇9鏃跺氨搴旇鏀懼湪絎?1浣嶏級銆?br><br>A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 9 <--<br>T[i]= 0, 2, 3, 5, 6, 9, 10, 10, 10, 11<br>Ans = _ _ _ _ _ _ _ _ _ _ _ 9<br><br>    鎺ヤ笅鏉ョ殑鍑犳濡備笅錛?br><br>A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5 <--<br>T[i]= 0, 2, 3, 5, 6, 8, 10, 10, 10, 11<br>Ans = _ _ _ _ _ _ _ _ 5 _ _ 9<br><br>A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5, 3 <--<br>T[i]= 0, 2, 3, 4, 6, 8, 10, 10, 10, 11<br>Ans = _ _ _ _ 3 _ _ _ 5 _ _ 9<br><br>A[]= 3, 1, 4, 1, 5, 9, 2, 6, 5 <--<br>T[i]= 0, 2, 3, 4, 6, 7, 10, 10, 10, 11<br>Ans = _ _ _ _ 3 _ _ 5 5 _ _ 9<br><br>    榪欑綆楁硶鍙? 鍋氳鏁版帓搴?Counting Sort)銆傛紜у拰澶嶆潅搴﹂兘鏄樉鐒剁殑銆?br><br><br><strong> 闂鍥涳細緇欏畾鏁扮殑鏁版嵁鑼冨洿澶т簡璇ユ庝箞 鍔烇紵</strong> <br>STOP! You should think for a while.<br><br>    鍓嶉潰鐨勭畻娉曞彧鏈夊湪鏁版嵁鐨勮寖鍥翠笉澶ф椂鎵嶅彲琛岋紝濡傛灉緇欏畾鐨勬暟鍦ㄩ暱鏁磋寖鍥村唴鐨勮瘽錛岃繖涓畻娉曟槸涓嶅彲琛岀殑錛屽洜涓? 浣犲紑涓嶄笅榪欎箞澶х殑鏁扮粍銆俁adix鎺掑簭(Radix Sort)瑙e喅浜嗚繖涓毦棰樸?br>    鏄ㄥぉ鎴戞病浜嬬炕浜嗕竴涓嬪垵涓紙9鐝級鏃剁殑鍚屽褰曪紝鍥炲繂浜嗕竴涓? 榪囧幓銆傛垜鎶婃瘮杈冩劅鍏磋叮鐨凪M鐨勭敓鏃ュ垪鍦ㄤ笅闈紙緇濆鐪熷疄錛夈傚鏋滃垪琛ㄤ腑鐨勫摢涓狹M鏈夊垢鐪嬪埌浜嗚繖綃囨棩蹇楋紙鍑犱箮涓嶅彲鑳斤級錛屽乏杈圭殑Support鏍忔湁鎴戠殑鐢?shù)瀛愯仈绯? 鏂瑰紡錛屾垜鎯崇煡閬撲綘浠庝箞鏍蜂簡銆傛帓鍚嶄笉鍒嗗厛鍚庛?br> </strong> <ul> <li><strong style="color: #0000ff;">19880818<br> </strong></li> <li><strong style="color: #0000ff;">19880816<br> </strong></li> <li><strong style="color: #0000ff;">19890426<br> </strong></li> <li><strong style="color: #0000ff;">19880405<br> </strong></li> <li><strong style="color: #0000ff;">19890125<br> </strong></li> <li><strong style="color: #0000ff;">19881004<br> </strong></li> <li><strong style="color: #0000ff;">19881209<br> </strong></li> <li><strong style="color: #0000ff;">19890126<br> </strong></li> <li><strong style="color: #0000ff;">19890228 </strong></li> </ul> <p><strong style="color: #0000ff;"><br>    榪欏氨鏄垜鐨勬暟鎹簡銆傜幇鍦紝鎴戣緇欒繖浜涙暟鎺掑簭銆傚亣濡傛垜鐨勭數(shù)鑴戝彧鑳藉紑鍑?..99鐨勬暟緇勶紝閭h鏁版帓搴忕畻娉曟渶澶氬涓や綅鏁拌繘琛屾帓搴忋傛垜灝辨妸 姣忎釜鍏綅鏁頒袱浣嶄袱浣嶅湴鍒嗘垚鍥涙錛堝浘1錛夛紝鍒嗗埆榪涜鍥涙璁℃暟鎺掑簭銆傚湴鐞冧漢閮界煡閬撴湀浠界浉鍚屾椂搴旇鐪嬪摢涓鏃ワ紝鍥犳鎴戜滑鐪嬫湀浠界殑澶у皬鏃跺簲璇ヤ簨鍏堜繚璇佹棩宸茬粡鏈夊簭銆傛崲 鍙ヨ瘽璇達紝鎴戜滑鍏堝“鏈涓嶉噸瑕?#8221;鐨勯儴鍒嗚繘琛屾帓搴忋傛垜浠厛瀵規(guī)墍鏈夋暟鐨勬渶鍚庝袱浣嶈繘琛屼竴嬈¤鏁版帓搴忥紙鍥?錛夈傛敞鎰忚瀵?鏈?6鍙風(fēng)殑MM鍜?鏈?6鍙風(fēng)殑MM錛屾湰嬈℃帓 搴忎腑瀹冧滑鐨勫睘鎬у肩浉鍚岋紝鐢變簬璁℃暟鎺掑簭鏄ǔ瀹氱殑錛屽洜姝?鏈堜喚閭d釜鎺掑畬鍚庝緷鐒跺湪1鏈堜喚閭d釜鐨勫墠澶淬傛帴涓嬫潵鎴戜滑瀵圭櫨浣嶅拰鍗冧綅榪涜鎺掑簭錛堝浘3錛夈備綘鍙互鐪嬪埌涓や釜 26鏃ョ殑MM鍦ㄨ繖涓嬈℃帓搴忎腑鍒嗗嚭浜嗗ぇ灝忥紝鑰屾湀浠界浉鍚岀殑MM渚濈劧淇濇寔鏃ユ暟鏈夊簭錛堝洜涓鴻鏁版帓搴忔槸紼沖畾鐨勶級銆傛渶鍚庢垜浠騫翠喚鎺掑簭錛堝浘4錛夛紝瀹屾垚鏁翠釜綆楁硶銆傚ぇ瀹墮兘 鏄法涓栫邯鐨勫ソ鍎跨錛屽洜姝ゆ病鏈夊浘5浜嗐?br><br>       <img alt="" src="http://www.matrix67.com/blogimage/200704131.gif" border="0"><br><br>    榪? 縐嶇畻娉曟樉鐒舵槸姝g‘鐨勩傚畠鐨勫鏉傚害涓鑸啓鎴怬(d*(n+m))錛屽叾涓璶琛ㄧずn涓暟錛宮鏄垜寮鐨勬暟緇勫ぇ灝忥紙鏈緥涓璵=100錛夛紝d鏄竴涓父鏁板洜瀛愶紙鏈緥涓? d=4錛夈傛垜浠涓哄畠涔熸槸綰挎х殑銆?br><br><br><strong> 闂浜旓細榪欐牱鐨勬帓搴忔柟娉曡繕鏈変粈涔堣嚧鍛界殑緙洪櫡錛?/strong> <br>STOP! You should think for a while.<br><br>    鍗? 浣挎暟鎹湁30浣嶏紝鎴戜滑涔熷彲浠ョ敤d=5鎴?鐨凴adix綆楁硶榪涜鎺掑簭銆備絾錛岃鏄粰瀹氱殑鏁版嵁鏈夋棤絀峰浣嶆庝箞鍔烇紵鏈変漢璇達紝榪欏彲鑳戒箞銆傝繖鏄彲鑳界殑錛屾瘮濡傜粰瀹氱殑鏁版嵁 鏄皬鏁幫紙鏇村噯紜湴璇達紝瀹炴暟錛夈傚熀浜庢瘮杈冪殑鎺掑簭鍙互鍖哄垎355/113鍜?#960;鍝? 涓ぇ錛屼絾浣犱笉鐭ラ亾Radix鎺掑簭闇瑕佺簿紜埌鍝竴浣嶃傝繖涓嬫儴浜嗭紝瀹炴暟鐨勫嚭鐜版妸璨屼技楂樼鎶鐨勭嚎鎬ф椂闂存帓搴忔墦鍥炰簡鍐滀笟鏃朵唬銆傝繖鏃訛紝妗舵帓搴忓啀搴﹀嚭灞憋紝鎸芥晳浜嗙嚎鎬ф椂 闂存帓搴忔?zhèn)叉儴鐨勫懡杩愩?br><br><br><strong> 闂鍏細濡備綍瀵瑰疄鏁拌繘琛岀嚎鎬ф椂闂存帓搴忥紵</strong> <br>STOP! You should think for a while.<br><br>    鎴? 浠妸闂綆鍖栦竴涓嬶紝緇欏嚭鐨勬墍鏈夋暟閮芥槸0鍒?涔嬮棿鐨勫皬鏁般傚鏋滀笉鏄紝涔熷彲浠ユ妸鎵鏈夋暟鍚屾椂闄や互涓涓ぇ鏁存暟浠庤岃漿鍖栦負榪欑褰㈠紡銆傛垜浠緷鐒惰绔嬭嫢騫蹭釜妗訛紝姣斿錛屼互 灝忔暟鐐瑰悗闈竴浣嶆暟涓轟緷鎹鎵鏈夋暟榪涜鍒掑垎銆傛垜浠粛鐒剁敤閾捐〃鎶婂悓涓綾葷殑鏁頒覆鍦ㄤ竴璧鳳紝涓嶅悓鐨勬槸錛屾瘡涓涓摼琛ㄩ兘鏄湁搴忕殑銆備篃灝辨槸璇達紝姣忎竴嬈¤鍒頒竴涓柊鐨勬暟閮借榪? 琛屼竴嬈℃彃鍏ユ帓搴忋傜湅鎴戜滑鐨勪緥瀛愶細<br><br>      A[]= 0.12345, 0.111, 0.618, 0.9, 0.99999<br>               +---+---+---+---+---+---+---+---+---+---+<br>      鍗佸垎浣嶏細 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |<br>               +---+-o-+---+---+---+---+-o-+---+---+-o-+<br>                     |                   |           |<br>                   A[2]=0.111          A[3]=0.618   A[4]=0.9<br>                     |                               |<br>                   A[1]=0.12345                     A[5]=0.99999<br><br>    鍋囧鍐嶄笅涓涓鍏ョ殑鏁版槸 0.122222錛岃繖涓暟闇瑕佹彃鍏ュ埌鍗佸垎浣嶄負1鐨勯偅涓摼琛ㄩ噷閫傚綋鐨勪綅緗傛垜浠渶瑕侀亶鍘嗚閾捐〃鐩村埌鎵懼埌絎竴涓瘮0.122222澶х殑鏁幫紝鍦ㄤ緥瀛愪腑鍒欏簲璇ユ彃鍏? 鍒伴摼琛ㄤ腑A[2]鍜孉[1]涔嬮棿銆傛渶鍚庯紝鎴戜滑鎸夐『搴忛亶鍘嗘墍鏈夐摼琛紝渚濇杈撳嚭姣忎釜閾捐〃涓殑姣忎釜鏁般?br>    榪欎釜綆楁硶鏄劇劧鏄紜殑錛屼絾澶嶆潅搴︽樉鐒朵笉鏄? 綰挎с備簨瀹炰笂錛岃繖縐嶇畻娉曟渶鍧忔儏鍐典笅鏄疧(n^2)鐨勶紝鍥犱負褰撴墍鏈夋暟鐨勫崄鍒嗕綅閮界浉鍚屾椂綆楁硶灝辨槸涓涓彃鍏ユ帓搴忋傚拰鍘熸潵涓鏍鳳紝鎴戜滑涓嬮潰瑕佽綆楃畻娉曠殑騫沖潎鏃墮棿澶嶆潅 搴︼紝鎴戜滑甯屾湜榪欑綆楁硶鐨勫鉤鍧囧鏉傚害鏄嚎鎬х殑銆?br>    榪欐綆楀鉤鍧囧鏉傚害鎴戜滑鐢ㄦ渶絎ㄧ殑鍔炴硶銆傛垜浠皢綆楀嚭鎵鏈夊彲鑳藉嚭鐜扮殑鎯呭喌鐨勬繪椂闂村鏉傚害錛岄櫎浠ユ葷殑 鎯呭喌鏁幫紝寰楀埌騫沖潎鐨勫鏉傚害鏄灝戙?br>    姣忎釜鏁伴兘鍙兘灞炰簬10涓《涓殑涓涓紝n涓暟鎬葷殑鎯呭喌鏈?0^n縐嶃傝繖涓兼槸鎴戜滑搴炲ぇ鐨勭畻寮忕殑鍒嗘瘝閮ㄥ垎銆? 濡傛灉涓涓《閲屾湁K涓厓绱狅紝閭d箞鍙笌榪欎釜妗舵湁鍏崇殑鎿嶄綔鏈塐(K^2)嬈★紝瀹冨氨鏄竴嬈℃彃鍏ユ帓搴忕殑鎿嶄綔嬈℃暟銆備笅闈㈣綆楋紝鍦?0^n縐嶆儏鍐典腑錛孠0=1鏈夊灝戠鎯? 鍐點侹0=1琛ㄧず錛宯涓暟涓彧鏈変竴涓暟鍦?鍙鋒《錛屽叾浣檔-1涓暟鐨勫崄鍒嗕綅灝卞彧鑳藉湪1鍒?涓夋嫨銆傞偅涔圞0=1鐨勬儏鍐墊湁C(n,1)*9^(n-1)錛岃屾瘡 涓狵0=1鐨勬儏鍐靛湪0鍙鋒《涓皢浜х敓1^2鐨勫鏉傚害銆傜被浼煎湴錛孠i=p鐨勬儏鍐墊暟涓篊(n,p)*9^(n-p)錛屽鏉傚害鎬昏涓篊(n,p)*9^(n- p)*p^2銆傛灇涓炬墍鏈塊鐨勪笅鏍囧拰p鍊鹼紝绱姞璧鋒潵錛岃繖涓畻寮忓ぇ瀹跺簲璇ヨ兘鍐欏嚭鏉ヤ簡錛屼絾鏄繖涓?#8230;…鎬庝箞綆楀晩銆傚埆鎬曪紝鎴戜滑鏄悶璁$畻鏈虹殑錛屾嬁鍑虹偣鍜孧O涓嶄竴鏍風(fēng)殑涓? 瑗挎潵銆備簬鏄紝Mathematica 5.0闅嗛噸鐧誨満錛屾垜鍋氭暟瀛︿綔涓氬叏闈犲畠銆傚畠?yōu)畣甯垜浠寲绠榪欎釜澶嶆潅鐨勫紡瀛愩?br><img alt="" src="http://www.matrix67.com/blogimage/200704132.gif" border="0"><br><br>    鎴? 浠仐鎲懼湴鍙戠幇錛岃櫧鐒跺父鏁板洜瀛愬緢灝忥紙鍙湁0.1錛夛紝浣嗙畻娉曠殑騫沖潎澶嶆潅搴︿粛鐒舵槸騫蟲柟鐨勩傜瓑涓涓嬶紝1/10鐨勯偅涓?0鏄垜浠《鐨勪釜鏁板悧錛熼偅涔堟垜浠負浠涔堜笉鎶婃《鐨? 涓暟寮勫ぇ鐐癸紵鎴戜滑騫茶剢鐢╩鏉ヨ〃紺烘《鐨勪釜鏁幫紝閲嶆柊璁$畻涓嬈★細<br><img alt="" src="http://www.matrix67.com/blogimage/200704133.gif" border="0"><br><br>    鍖? 綆鍑烘潵錛屾搷浣滄鏁頒負O(n+n^2/m)銆傚彂鐜頒簡涔堬紝濡傛灉m=Θ(n)鐨勮瘽錛屽鉤鍧囧鏉傚害灝卞彉鎴愪簡O(n)銆備篃灝辨槸璇達紝褰撴《鐨勪釜鏁扮瓑浜庤緭鍏ユ暟鎹殑涓暟鏃訛紝綆? 娉曟槸騫沖潎綰挎х殑銆?br>    鎴戜滑灝嗗湪Hash琛ㄥ紑鏁e垪鐨勪粙緇嶄腑閲嶆柊鎻愬埌榪欎釜緇撹銆?br><br>    涓旀參錛岃繕鏈変竴涓棶棰樸?0涓《浠ュ崄鍒嗕綅鐨? 鏁板瓧褰掔被錛岄偅涔坣涓《鐢ㄤ粈涔堟柟娉曟潵鍒嗙被鍛紵娉ㄦ剰錛屽垎綾葷殑鏂規(guī)硶闇瑕佹弧瓚籌紝涓錛屼竴涓暟鍒嗗埌姣忎釜妗墮噷鐨勬鐜囩浉鍚岋紙榪欐牱鎵嶆湁鎴戜滑涓婇潰鐨勭粨璁猴級錛涗簩錛屾墍鏈夋《閲屽綰沖厓 绱犵殑鑼冨洿蹇呴』鏄繛緇殑銆傛牴鎹繖涓や釜鏉′歡錛屾垜浠湁鍔炴硶鎶婃墍鏈夋暟鎭板ソ鍒嗕負n綾匯傛垜浠殑杈撳叆鏁版嵁涓嶆槸閮藉湪0鍒?涔嬮棿涔堬紵鍙渶瑕佺湅榪欎簺鏁頒箻浠鐨勬暣鏁伴儴鍒嗘槸澶氬皯灝? 琛屼簡錛岃鍒頒竴涓暟鍚庝箻浠鍙栨暣寰楀嚑灝辨彃鍏ュ埌鍑犲彿妗墮噷銆傝繖鏈川涓婄浉褰撲簬鎶婂尯闂碵0,1)騫沖潎鍒嗘垚n浠姐?br><br><br><strong> 闂涓冿細鏈? 娌℃湁澶嶆潅搴︿綆浜庣嚎鎬х殑鎺掑簭綆楁硶</strong> <br>STOP! You should think for a while.<br><br>    鎴戜滑浠嶰(n^2)璧板悜O(nlogn)錛屽張浠嶰(nlogn)璧板悜綰挎э紝 姣忎竴嬈℃垜浠兘璁ㄨ浜嗗鏉傚害涓嬮檺鐨勯棶棰橈紝鏍規(guī)嵁璁ㄨ鐨勭粨鏋滄彁鍑轟簡鏇翠紭鐨勭畻娉曘傝繖嬈℃葷畻涓嶈浜嗭紝涓嶅彲鑳芥湁姣旂嚎鎬ц繕蹇殑綆楁硶浜嗭紝鍥犱負鈥斺斾綘璇誨叆銆佽緭鍑烘暟鎹嚦灝戝氨闇 瑕佺嚎鎬х殑鏃墮棿銆傛帓搴忕畻娉曚箣鏃呭湪綰挎ф椂闂村鏉傚害榪欎竴绔欑粓姝簡錛屾墍鏈夊崄縐嶆帓搴忕畻娉曞埌榪欓噷浠嬬粛瀹屾瘯浜嗐?br><br><br><br>    鏂囩珷鏈夎秺鍐欒秺闀? 鐨勮秼鍔夸簡錛屾垜媯鏌ヨ搗鏉ヤ篃瓚婃潵瓚婄瘡浜嗐傛垜鍙堢湅浜嗕笁閬嶏紝搴旇娌¢棶棰樹簡銆傜兢浼楃殑鐪肩潧鏄洩浜殑錛屾伋璇峰ぇ瀹跺府鎴戞壘閿欍?br></strong></p> <strong style="color: #0000ff;"> </strong><br> <img src ="http://www.shnenglu.com/yuqilin1228/aggbug/110617.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/yuqilin1228/" target="_blank">LynnRaymond</a> 2010-03-26 21:54 <a href="http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110617.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>銆愯漿杞姐戜綅榪愮畻綆浠嬪強瀹炵敤鎶宸?/title><link>http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110616.html</link><dc:creator>LynnRaymond</dc:creator><author>LynnRaymond</author><pubDate>Fri, 26 Mar 2010 13:48:00 GMT</pubDate><guid>http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110616.html</guid><wfw:comment>http://www.shnenglu.com/yuqilin1228/comments/110616.html</wfw:comment><comments>http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110616.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/yuqilin1228/comments/commentRss/110616.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/yuqilin1228/services/trackbacks/110616.html</trackback:ping><description><![CDATA[<a title="Permanent link to 浣嶈繍綆楃畝浠嬪強瀹炵敤鎶宸э紙涓錛夛細鍩虹綃? rel="bookmark">浣? 榪愮畻綆浠嬪強瀹炵敤鎶宸э紙涓錛夛細鍩虹綃?/a>   FROM:Matrix67澶х墰 <br>鍘誨勾騫村簳鍐欑殑鍏充簬<a target="_blank">浣嶈繍綆?/a>鐨勬棩蹇楁槸榪欎釜Blog閲屽皯鏁板ぇ鍙楁榪庣殑鏂囩珷涔嬩竴錛屽緢澶氫漢閮藉笇鏈涙垜鑳戒笉鏂畬鍠勯偅綃囨枃绔犮傚悗鏉ユ垜鐪嬪埌浜嗕笉灝戝叾 瀹冪殑璧勬枡錛屽涔?fàn)鍒颁簡鏇村鍏充簬浣崢q愮畻鐨勭煡璇嗭紝鏈変簡閲嶆柊鏁寸悊浣嶈繍綆楁妧宸х殑鎯蟲硶銆備粠浠婂ぉ璧鋒垜灝卞紑濮嬪啓榪欎竴緋誨垪浣嶈繍綆楄瑙f枃绔狅紝涓庡叾璇存槸鍘熸潵閭g瘒鏂囩珷鐨? follow-up錛屼笉濡傝鏄竴涓猺emake銆傚綋鐒墮鍏堟垜榪樻槸浠庢渶鍩虹鐨勪笢瑗胯璧楓?br><br>浠涔堟槸浣嶈繍綆楋紵<br>    紼嬪簭涓殑鎵鏈夋暟鍦ㄨ 綆楁満鍐呭瓨涓兘鏄互浜岃繘鍒剁殑褰㈠紡鍌ㄥ瓨鐨勩備綅榪愮畻璇寸┛浜嗭紝灝辨槸鐩存帴瀵規(guī)暣鏁板湪鍐呭瓨涓殑浜岃繘鍒朵綅榪涜鎿嶄綔銆傛瘮濡傦紝and榪愮畻鏈潵鏄竴涓昏緫榪愮畻絎︼紝浣嗘暣鏁頒笌鏁存暟涔? 闂翠篃鍙互榪涜and榪愮畻銆備婦涓緥瀛愶紝6鐨勪簩榪涘埗鏄?10錛?1鐨勪簩榪涘埗鏄?011錛岄偅涔? and 11鐨勭粨鏋滃氨鏄?錛屽畠鏄簩榪涘埗瀵瑰簲浣嶈繘琛岄昏緫榪愮畻鐨勭粨鏋滐紙0琛ㄧずFalse錛?琛ㄧずTrue錛岀┖浣嶉兘褰?澶勭悊錛夛細<br>     110<br>AND 1011<br>----------<br>    0010  -->  2<br>    鐢變簬浣嶈繍綆楃洿鎺ュ鍐呭瓨鏁版嵁榪涜鎿嶄綔錛屼笉闇瑕佽漿鎴? 鍗佽繘鍒訛紝鍥犳澶勭悊閫熷害闈炲父蹇傚綋鐒舵湁浜轟細璇達紝榪欎釜蹇簡鏈変粈涔堢敤錛岃綆? and 11娌℃湁浠涔堝疄闄呮剰涔夊晩銆傝繖涓緋誨垪鐨勬枃绔犲氨灝嗗憡璇変綘錛屼綅榪愮畻鍒板簳鍙互騫蹭粈涔堬紝鏈変簺浠涔堢粡鍏稿簲鐢紝浠ュ強濡備綍鐢ㄤ綅榪愮畻浼樺寲浣犵殑紼嬪簭銆?br><br><br>Pascal 鍜孋涓殑浣嶈繍綆楃鍙?br>    涓嬮潰鐨刟鍜宐閮芥槸鏁存暟綾誨瀷錛屽垯錛?br>C璇█  |  Pascal璇█<br>-------+-------------<br>a & b  |  a and b<br>a | b  |  a or b<br>a ^ b  |  a xor b<br>  ~a   |   not a<br>a << b |  a shl b<br>a >> b |  a shr b<br>    娉? 鎰廋涓殑閫昏緫榪愮畻鍜屼綅榪愮畻絎﹀彿鏄笉鍚岀殑銆?20|1314=1834錛屼絾520||1314=1錛屽洜涓洪昏緫榪愮畻鏃?20鍜?314閮界浉褰撲簬True銆傚悓鏍? 鐨勶紝!a鍜寏a涔熸槸鏈夊尯鍒殑銆?br><br><br>鍚勭浣嶈繍綆楃殑浣跨敤<br>    === 1. and榪愮畻 ===<br>    and榪愮畻閫? 甯哥敤浜庝簩榪涘埗鍙栦綅鎿嶄綔錛屼緥濡備竴涓暟 and 1鐨勭粨鏋滃氨鏄彇浜岃繘鍒剁殑鏈鏈綅銆傝繖鍙互鐢ㄦ潵鍒ゆ柇涓涓暣鏁扮殑濂囧伓錛屼簩榪涘埗鐨勬渶鏈綅涓?琛ㄧず璇ユ暟涓哄伓鏁幫紝鏈鏈綅涓?琛ㄧず璇ユ暟涓哄鏁?<br><br>    === 2. or榪愮畻 ===<br>    or榪愮畻閫氬父鐢ㄤ簬浜岃繘鍒剁壒瀹氫綅涓婄殑鏃犳潯浠惰祴鍊鹼紝渚嬪涓涓暟or 1鐨勭粨鏋滃氨鏄妸浜岃繘鍒舵渶鏈綅寮鴻鍙樻垚1銆傚鏋滈渶瑕佹妸浜岃繘鍒舵渶鏈綅鍙樻垚0錛屽榪欎釜鏁皁r 1涔嬪悗鍐嶅噺涓灝卞彲浠ヤ簡錛屽叾瀹為檯鎰忎箟灝辨槸鎶婅繖涓暟寮鴻鍙樻垚鏈鎺ヨ繎鐨勫伓鏁般?br><br>    === 3. xor榪愮畻 ===<br>    xor 榪愮畻閫氬父鐢ㄤ簬瀵逛簩榪涘埗鐨勭壒瀹氫竴浣嶈繘琛屽彇鍙嶆搷浣滐紝鍥犱負寮傛垨鍙互榪欐牱瀹氫箟錛?鍜?寮傛垨0閮戒笉鍙橈紝寮傛垨1鍒欏彇鍙嶃?br>    xor榪愮畻鐨勯嗚繍綆楁槸瀹冩湰韜紝 涔熷氨鏄涓ゆ寮傛垨鍚屼竴涓暟鏈鍚庣粨鏋滀笉鍙橈紝鍗?a xor b) xor b = a銆倄or榪愮畻鍙互鐢ㄤ簬綆鍗曠殑鍔犲瘑錛屾瘮濡傛垜鎯沖鎴慚M璇?314520錛屼絾鎬曞埆浜虹煡閬擄紝浜庢槸鍙屾柟綰﹀畾鎷挎垜鐨勭敓鏃?9880516浣滀負瀵嗛挜銆?314520 xor 19880516 = 20665500錛屾垜灝辨妸20665500鍛婅瘔MM銆侻M鍐嶆璁$畻20665500 xor 19880516鐨勫鹼紝寰楀埌1314520錛屼簬鏄ス灝辨槑鐧戒簡鎴戠殑浼佸浘銆?br>    涓嬮潰鎴戜滑鐪嬪彟澶栦竴涓笢瑗褲傚畾涔変袱涓鍙?鍜孈錛堟垜鎬庝箞鎵句笉鍒伴偅涓湀 閲屾湁涓弶鐨勫瓧絎︼級錛岃繖涓や釜絎﹀彿浜掍負閫嗚繍綆楋紝涔熷氨鏄(x # y) @ y = x銆傜幇鍦ㄤ緷嬈℃墽琛屼笅闈笁鏉″懡浠わ紝緇撴灉鏄粈涔堬紵<br><code>x <- x # y<br>y <- x @ y<br>x <- x @ y</code><br>    鎵ц浜嗙涓鍙ュ悗x鍙樻垚浜唜 # y銆傞偅涔堢浜屽彞瀹炶川灝辨槸y <- x # y @ y錛岀敱浜?鍜孈浜掍負閫嗚繍綆楋紝閭d箞姝ゆ椂鐨剏鍙樻垚浜嗗師鏉ョ殑x銆傜涓夊彞涓瓁瀹為檯涓婅璧嬪間負(x # y) @ x錛屽鏋?榪愮畻鍏鋒湁浜ゆ崲寰嬶紝閭d箞璧嬪煎悗x灝卞彉鎴愭渶鍒濈殑y浜嗐傝繖涓夊彞璇濈殑緇撴灉鏄紝x鍜寉鐨勪綅緗簰鎹簡銆?br>    鍔犳硶鍜屽噺娉曚簰涓洪嗚繍綆楋紝 騫朵笖鍔犳硶婊¤凍浜ゆ崲寰嬨傛妸#鎹㈡垚+錛屾妸@鎹㈡垚-錛屾垜浠彲浠ュ啓鍑轟竴涓笉闇瑕佷復(fù)鏃跺彉閲忕殑swap榪囩▼(Pascal)銆?br><code>procedure swap(var a,b:longint);<br>begin<br>   a:=a + b;<br>   b:=a - b;<br>   a:=a - b;<br>end;</code><br>    濂戒簡錛屽垰鎵嶄笉鏄xor鐨勯嗚繍綆楁槸瀹冩湰韜悧錛熶簬鏄垜浠氨鏈変簡涓涓湅璧鋒潵闈炲父璇″紓鐨? swap榪囩▼錛?br><code>procedure swap(var a,b:longint);<br>begin<br>   a:=a xor b;<br>   b:=a xor b;<br>   a:=a xor b;<br>end;</code><br><br>    === 4. not榪愮畻 ===<br>    not榪愮畻鐨勫畾涔夋槸鎶婂唴瀛樹腑鐨?鍜?鍏ㄩ儴鍙栧弽銆備嬌鐢╪ot榪愮畻鏃惰鏍煎灝忓績錛屼綘闇瑕佹敞鎰忔暣鏁扮被鍨嬫湁娌℃湁絎﹀彿銆? 濡傛灉not鐨勫璞℃槸鏃犵鍙鋒暣鏁幫紙涓嶈兘琛ㄧず璐熸暟錛夛紝閭d箞寰楀埌鐨勫煎氨鏄畠涓庤綾誨瀷涓婄晫鐨勫樊錛屽洜涓烘棤絎﹀彿綾誨瀷鐨勬暟鏄敤$0000鍒?FFFF渚濇琛ㄧず鐨勩備笅闈㈢殑 涓や釜紼嬪簭錛堜粎璇█涓嶅悓錛夊潎榪斿洖65435銆?br><code>var<br>   a:word;<br>begin<br>   a:=100;<br>   a:=not a;<br>   writeln(a);<br>end.</code><br><code>#include <stdio.h><br>int main()<br>{<br>    unsigned short a=100;<br>    a = ~a;<br>    printf( "%d\n", a );    <br>    return 0;<br>}</code><br>    濡? 鏋渘ot鐨勫璞℃槸鏈夌鍙風(fēng)殑鏁存暟錛屾儏鍐靛氨涓嶄竴鏍蜂簡錛岀◢鍚庢垜浠細鍦?#8220;鏁存暟綾誨瀷鐨勫偍瀛?#8221;灝忚妭涓彁鍒般?br><br>    === 5. shl榪愮畻 ===<br>    a shl b灝辮〃紺烘妸a杞負浜岃繘鍒跺悗宸︾Щb浣嶏紙鍦ㄥ悗闈㈡坊b涓?錛夈備緥濡?00鐨勪簩榪涘埗涓?100100錛岃?10010000杞垚鍗佽繘鍒舵槸400錛岄偅涔?00 shl 2 = 400銆傚彲浠ョ湅鍑猴紝a shl b鐨勫煎疄闄呬笂灝辨槸a涔樹互2鐨刡嬈℃柟錛屽洜涓哄湪浜岃繘鍒舵暟鍚庢坊涓涓?灝辯浉褰撲簬璇ユ暟涔樹互2銆?br>    閫氬父 璁や負a shl 1姣攁 * 2鏇村揩錛屽洜涓哄墠鑰呮槸鏇村簳灞備竴浜涚殑鎿嶄綔銆傚洜姝ょ▼搴忎腑涔樹互2鐨勬搷浣滆灝介噺鐢ㄥ乏縐諱竴浣嶆潵浠f浛銆?br>    瀹氫箟涓浜涘父閲忓彲鑳戒細 鐢ㄥ埌shl榪愮畻銆備綘鍙互鏂逛究鍦扮敤1 shl 16 - 1鏉ヨ〃紺?5535銆傚緢澶氱畻娉曞拰鏁版嵁緇撴瀯瑕佹眰鏁版嵁瑙勬ā蹇呴』鏄?鐨勫箓錛屾鏃跺彲浠ョ敤shl鏉ュ畾涔塎ax_N絳夊父閲忋?br><br>    === 6. shr榪愮畻 ===<br>    鍜宻hl鐩鎬技錛宎 shr b琛ㄧず浜岃繘鍒跺彸縐籦浣嶏紙鍘繪帀鏈玝浣嶏級錛岀浉褰撲簬a闄や互2鐨刡嬈℃柟錛堝彇鏁達級銆傛垜浠篃緇忓父鐢╯hr 1鏉ヤ唬鏇縟iv 2錛屾瘮濡備簩鍒嗘煡鎵俱佸爢鐨勬彃鍏ユ搷浣滅瓑絳夈傛兂鍔炴硶鐢╯hr浠f浛闄ゆ硶榪愮畻鍙互浣跨▼搴忔晥鐜囧ぇ澶ф彁楂樸傛渶澶у叕綰︽暟鐨勪簩榪涘埗綆楁硶鐢ㄩ櫎浠?鎿嶄綔鏉ヤ唬鏇挎參寰楀嚭濂囩殑mod榪? 綆楋紝鏁堢巼鍙互鎻愰珮60%銆?br><br><br>浣嶈繍綆楃殑綆鍗曞簲鐢?br>    鏈夋椂鎴戜滑鐨勭▼搴忛渶瑕佷竴涓妯′笉澶х殑Hash琛ㄦ潵璁板綍鐘舵併傛瘮濡傦紝鍋氭暟 鐙椂鎴戜滑闇瑕?7涓狧ash琛ㄦ潵緇熻姣忎竴琛屻佹瘡涓鍒楀拰姣忎竴涓皬涔?jié)瀹牸閲屽凡缁忔湁鍝簺鏁颁簡銆傛鏃訛紝鎴戜滑鍙互鐢?7涓皬浜?^9鐨勬暣鏁拌繘琛岃褰曘備緥濡傦紝涓涓彧濉? 浜?鍜?鐨勫皬涔?jié)瀹牸灏辩敤鏁板?8琛ㄧず錛堜簩榪涘埗涓?00010010錛夛紝鑰屾煇涓琛岀殑鐘舵佷負511鍒欒〃紺鴻繖涓琛屽凡緇忓~婊°傞渶瑕佹敼鍙樼姸鎬佹椂鎴戜滑涓嶉渶瑕佹妸榪欎釜鏁拌漿 鎴愪簩榪涘埗淇敼鍚庡啀杞洖鍘伙紝鑰屾槸鐩存帴榪涜浣嶆搷浣溿傚湪鎼滅儲鏃訛紝鎶婄姸鎬佽〃紺烘垚鏁存暟鍙互鏇村ソ鍦拌繘琛屽垽閲嶇瓑鎿嶄綔銆?a target="_blank">榪欓亾棰?/a>鏄湪鎼滅儲涓嬌鐢ㄤ綅榪愮畻鍔犻熺殑緇忓吀渚嬪瓙銆備互鍚庢垜浠細鐪嬪埌鏇村鐨勪緥瀛愩?br>    涓嬮潰鍒椾婦浜嗕竴浜涘父瑙佺殑 浜岃繘鍒朵綅鐨勫彉鎹㈡搷浣溿?br><br>    鍔熻兘              |           紺轟緥            |    浣嶈繍綆?br>----------------------+---------------------------+--------------------<br>鍘? 鎺夋渶鍚庝竴浣?nbsp;         | (101101->10110)           | x shr 1<br>鍦ㄦ渶鍚庡姞涓涓? 0         | (101101->1011010)         | x shl 1<br>鍦ㄦ渶鍚庡姞涓涓?         | (101101->1011011)         | x shl 1+1<br>鎶婃渶鍚庝竴浣嶅彉鎴?       | (101100->101101)          | x or 1<br>鎶婃渶鍚庝竴浣嶅彉鎴?       | (101101->101100)          | x or 1-1<br>鏈鍚庝竴浣嶅彇鍙?nbsp;         | (101101->101100)          | x xor 1<br>鎶婂彸鏁扮k浣嶅彉鎴?      | (101001->101101,k=3)      | x or (1 shl (k-1))<br>鎶婂彸鏁扮k浣嶅彉鎴?      | (101101->101001,k=3)      | x and not (1 shl (k-1))<br>鍙蟲暟絎琸浣嶅彇 鍙?nbsp;        | (101001->101101,k=3)      | x xor (1 shl (k-1))<br>鍙栨湯涓? 浣?nbsp;             | (1101101->101)            | x and 7<br>鍙栨湯k 浣?nbsp;              | (1101101->1101,k=5)       | x and (1 shl k-1)<br>鍙栧彸 鏁扮k浣?nbsp;          | (1101101->1,k=4)          | x shr (k-1) and 1<br>鎶婃湯k 浣嶅彉鎴?          | (101001->101111,k=4)      | x or (1 shl k-1)<br>鏈玨浣嶅彇 鍙?nbsp;            | (101001->100110,k=4)      | x xor (1 shl k-1)<br>鎶婂彸杈硅繛 緇殑1鍙樻垚0    | (100101111->100100000)    | x and (x+1)<br>鎶婂彸璧風(fēng)涓涓?鍙樻垚 1    | (100101111->100111111)    | x or (x+1)<br>鎶婂彸杈硅繛緇殑0鍙樻垚1    | (11011000->11011111)      | x or (x-1)<br>鍙栧彸杈硅繛緇殑1         | (100101111->1111)         | (x xor (x+1)) shr 1<br>鍘繪帀鍙寵搗絎竴涓?鐨勫乏杈?| (100101000->1000)         | x and (x xor (x-1))<br><br>    鏈鍚庤繖涓涓湪鏍?wèi)鐘舵暟缁? 涓細鐢ㄥ埌銆?br><br><br>Pascal鍜孋涓殑16榪涘埗琛ㄧず<br>    Pascal涓渶瑕佸湪16榪涘埗鏁板墠鍔?絎﹀彿琛ㄧず錛孋涓渶瑕佸湪鍓嶉潰鍔? 0x鏉ヨ〃紺恒傝繖涓互鍚庢垜浠細緇忓父鐢ㄥ埌銆?br><br>鏁存暟綾誨瀷鐨勫偍瀛?br>    鎴戜滑鍓嶉潰鎵璇寸殑浣嶈繍綆楅兘娌℃湁娑夊強璐熸暟錛岄兘鍋囪榪欎簺榪愮畻鏄湪 unsigned/word綾誨瀷錛堝彧鑳借〃紺烘鏁扮殑鏁村瀷錛変笂榪涜鎿嶄綔銆備絾璁$畻鏈哄浣曞鐞嗘湁姝h礋絎﹀彿鐨勬暣鏁扮被鍨嬪憿錛熶笅闈袱涓▼搴忛兘鏄冨療16浣嶆暣鏁扮殑鍌ㄥ瓨鏂瑰紡 錛堝彧鏄璦涓嶅悓錛夈?br><code>var<br>   a,b:integer;<br>begin<br>   a:=$0000;<br>   b:=$0001;<br>   write(a,' ',b,' ');<br>   a:=$FFFE;<br>   b:=$FFFF;<br>   write(a,' ',b,' ');<br>   a:=$7FFF;<br>   b:=$8000;<br>   writeln(a,' ',b);<br>end.</code><br><code>#include <stdio.h><br>int main()<br>{<br>    short int a, b;<br>    a = 0×0000;<br>    b = 0×0001;<br>    printf( "%d %d ", a, b );<br>    a = 0xFFFE;<br>    b = 0xFFFF;<br>    printf( "%d %d ", a, b );<br>    a = 0×7FFF;<br>    b = 0×8000;<br>    printf( "%d %d\n", a, b );<br>    return 0;<br>}</code><br>    涓や釜紼嬪簭鐨勮緭鍑哄潎涓? 1 -2 -1 32767 -32768銆傚叾涓墠涓や釜鏁版槸鍐呭瓨鍊兼渶灝忕殑鏃跺欙紝涓棿涓や釜鏁板垯鏄唴瀛樺兼渶澶х殑鏃跺欙紝鏈鍚庤緭鍑虹殑涓や釜鏁版槸姝f暟涓庤礋鏁扮殑鍒嗙晫澶勩傜敱姝や綘鍙互娓呮鍦扮湅鍒拌綆楁満鏄? 濡備綍鍌ㄥ瓨涓涓暣鏁扮殑錛氳綆楁満鐢?0000鍒?7FFF渚濇琛ㄧず0鍒?2767鐨勬暟錛屽墿涓嬬殑$8000鍒?FFFF渚濇琛ㄧず-32768鍒?1鐨勬暟銆?2浣? 鏈夌鍙鋒暣鏁扮殑鍌ㄥ瓨鏂瑰紡涔熸槸綾諱技鐨勩傜◢鍔犳敞鎰忎綘浼氬彂鐜幫紝浜岃繘鍒剁殑絎竴浣嶆槸鐢ㄦ潵琛ㄧず姝h礋鍙風(fēng)殑錛?琛ㄧず姝o紝1琛ㄧず璐熴傝繖閲屾湁涓涓棶棰橈細0鏈潵鏃笉鏄鏁幫紝涔熶笉鏄? 璐熸暟錛屼絾瀹冨崰鐢ㄤ簡$0000鐨勪綅緗紝鍥犳鏈夌鍙風(fēng)殑鏁存暟綾誨瀷鑼冨洿涓鏁頒釜鏁版瘮璐熸暟灝戜竴涓傚涓涓湁絎﹀彿鐨勬暟榪涜not榪愮畻鍚庯紝鏈楂樹綅鐨勫彉鍖栧皢瀵艱嚧姝h礋棰犲掞紝 騫朵笖鏁扮殑緇濆鍊間細宸?銆備篃灝辨槸璇達紝not a瀹為檯涓婄瓑浜?a-1銆傝繖縐嶆暣鏁板偍瀛樻柟寮忓彨鍋?#8220;琛ョ爜”銆?br><br>鏈鍚庤繕鏈変袱鍙ヨ瘽<br>    Matrix67 鍘熷垱<br>    杞創(chuàng)璇鋒敞鏄庡嚭澶?br><br><a title="Permanent link to 浣嶈繍綆楃畝浠嬪強瀹炵敤鎶宸э紙浜岋級錛氳繘闃剁瘒(1)" rel="bookmark">浣? 榪愮畻綆浠嬪強瀹炵敤鎶宸э紙浜岋級錛氳繘闃剁瘒(1)</a> <br> <p>=====   鐪熸寮虹殑涓滆タ鏉ヤ簡錛?nbsp;  =====<br><br>浜岃繘鍒朵腑鐨?鏈夊鏁頒釜榪樻槸鍋舵暟涓?br>    鎴戜滑鍙互鐢ㄤ笅闈㈢殑浠g爜鏉ヨ綆? 涓涓?2浣嶆暣鏁扮殑浜岃繘鍒朵腑1鐨勪釜鏁扮殑濂囧伓鎬э紝褰撹緭鍏ユ暟鎹殑浜岃繘鍒惰〃紺洪噷鏈夊伓鏁頒釜鏁板瓧1鏃剁▼搴忚緭鍑?錛屾湁濂囨暟涓垯杈撳嚭1銆備緥濡傦紝1314520鐨勪簩榪涘埗 101000000111011011000涓湁9涓?錛屽垯x=1314520鏃剁▼搴忚緭鍑?銆?br><code>var<br>   i,x,c:longint;<br>begin<br>   readln(x);<br>   c:=0;<br>   for i:=1 to 32 do<br>   begin<br>      c:=c + x and 1;<br>      x:=x shr 1;<br>   end;<br>   writeln( c and 1 );<br>end.</code><br>    浣嗚繖鏍風(fēng)殑鏁堢巼騫朵笉楂橈紝浣嶈繍綆楃殑紲炲涔嬪榪? 娌℃湁浣撶幇鍑烘潵銆?br>    鍚屾牱鏄垽鏂簩榪涘埗涓?鐨勪釜鏁扮殑濂囧伓鎬э紝涓嬮潰榪欐浠g爜灝卞己浜嗐備綘鑳界湅鍑鴻繖涓唬鐮佺殑鍘熺悊鍚楋紵<br><code>var<br>   x:longint;<br>begin<br>   readln(x);<br>   x:=x xor (x shr 1);<br>   x:=x xor (x shr 2);<br>   x:=x xor (x shr 4);<br>   x:=x xor (x shr 8);<br>   x:=x xor (x shr 16);<br>   writeln(x and 1);<br>end.</code><br>    涓轟簡璇存槑 涓婇潰榪欐浠g爜鐨勫師鐞嗭紝鎴戜滑榪樻槸鎷?314520鍑烘潵璇翠簨銆?314520鐨勪簩榪涘埗涓?01000000111011011000錛岀涓嬈″紓鎴栨搷浣滅殑緇撴灉濡? 涓嬶細<br><br>    00000000000101000000111011011000<br>XOR  0000000000010100000011101101100<br>---------------------------------------<br>    00000000000111100000100110110100<br><br>    寰? 鍒扮殑緇撴灉鏄竴涓柊鐨勪簩榪涘埗鏁幫紝鍏朵腑鍙寵搗絎琲浣嶄笂鐨勬暟琛ㄧず鍘熸暟涓i鍜宨+1浣嶄笂鏈夊鏁頒釜1榪樻槸鍋舵暟涓?銆傛瘮濡傦紝鏈鍙寵竟閭d釜0琛ㄧず鍘熸暟鏈袱浣嶆湁鍋舵暟涓?錛屽彸 璧風(fēng)3浣嶄笂鐨?灝辮〃紺哄師鏁扮殑榪欎釜浣嶇疆鍜屽墠涓涓綅緗腑鏈夊鏁頒釜1銆傚榪欎釜鏁拌繘琛岀浜屾寮傛垨鐨勭粨鏋滃涓嬶細<br><br>    00000000000111100000100110110100<br>XOR   000000000001111000001001101101<br>---------------------------------------<br>    00000000000110011000101111011001<br><br>    緇? 鏋滈噷鐨勬瘡涓?琛ㄧず鍘熸暟鐨勮浣嶇疆鍙婂叾鍓嶉潰涓変釜浣嶇疆涓叡鏈夊鏁頒釜1錛屾瘡涓?灝辮〃紺哄師鏁板搴旂殑鍥涗釜浣嶇疆涓婂叡鍋舵暟涓?銆備竴鐩村仛鍒扮浜旀寮傛垨緇撴潫鍚庯紝寰楀埌鐨勪簩榪涘埗鏁? 鐨勬渶鏈綅灝辮〃紺烘暣涓?2浣嶆暟閲屾湁澶氬皯涓?錛岃繖灝辨槸鎴戜滑鏈緇堟兂瑕佺殑絳旀銆?br><br><br>璁$畻浜岃繘鍒朵腑鐨?鐨勪釜鏁?br>    鍚屾牱鍋囪x鏄竴涓? 32浣嶆暣鏁般傜粡榪囦笅闈簲嬈¤祴鍊煎悗錛寈鐨勫煎氨鏄師鏁扮殑浜岃繘鍒惰〃紺轟腑鏁板瓧1鐨勪釜鏁般傛瘮濡傦紝鍒濆鏃秞涓?314520錛堢綉鍙嬫姄鐙傦細鑳戒笉鑳芥崲涓涓暟鍟婏級錛岄偅涔堟渶鍚? x灝卞彉鎴愪簡9錛屽畠琛ㄧず1314520鐨勪簩榪涘埗涓湁9涓?銆?br><code>x := (x and $55555555) + ((x shr 1) and $55555555); <br>x := (x and $33333333) + ((x shr 2) and $33333333); <br>x := (x and $0F0F0F0F) + ((x shr 4) and $0F0F0F0F); <br>x := (x and $00FF00FF) + ((x shr 8) and $00FF00FF); <br>x := (x and $0000FFFF) + ((x shr 16) and $0000FFFF); </code><br>    涓轟簡渚夸簬瑙h錛屾垜浠笅闈粎璇存槑榪欎釜紼嬪簭鏄浣曞涓涓?浣嶆暣鏁拌繘 琛屽鐞嗙殑銆傛垜浠嬁鏁板瓧211錛堟垜浠彮鏌怣M鐨勭敓鏃ワ級鏉ュ紑鍒銆?11鐨勪簩榪涘埗涓?1010011銆?br><br>+---+---+---+---+---+---+---+---+<br>| 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 |   <---鍘熸暟<br>+---+---+---+---+---+---+---+---+<br>|  1 0  |  0 1  |  0 0  |  1 0  |   <---絎竴嬈¤繍綆楀悗<br>+-------+-------+-------+-------+<br>|    0 0 1 1    |    0 0 1 0    |   <---絎簩嬈¤繍綆楀悗<br>+---------------+---------------+<br>|        0 0 0 0 0 1 0 1        |   <---絎笁嬈¤繍綆楀悗錛屽緱鏁頒負5<br>+-------------------------------+<br><br>    鏁? 涓▼搴忔槸涓涓垎娌葷殑鎬濇兂銆傜涓嬈℃垜浠妸姣忕浉閭?cè)潥勪袱浣嶅姞钃v鏉ワ紝寰楀埌姣忎袱浣嶉噷1鐨勪釜鏁幫紝姣斿鍓嶄袱浣?0灝辮〃紺哄師鏁扮殑鍓嶄袱浣嶆湁2涓?銆傜浜屾鎴戜滑緇х畫涓や袱鐩? 鍔狅紝10+01=11錛?0+10=10錛屽緱鍒扮殑緇撴灉鏄?0110010錛屽畠琛ㄧず鍘熸暟鍓?浣嶆湁3涓?錛屾湯4浣嶆湁2涓?銆傛渶鍚庝竴嬈℃垜浠妸0011鍜?010 鍔犺搗鏉ワ紝寰楀埌鐨勫氨鏄暣涓簩榪涘埗涓?鐨勪釜鏁般傜▼搴忎腑宸у鍦頒嬌鐢ㄥ彇浣嶅拰鍙崇Щ錛屾瘮濡傜浜岃涓?33333333鐨勪簩榪涘埗涓?0110011001100….錛岀敤 瀹冨拰x鍋歛nd榪愮畻灝辯浉褰撲簬浠?涓哄崟浣嶉棿闅斿彇鏁般俿hr鐨勪綔鐢ㄥ氨鏄鍔犳硶榪愮畻鐨勭浉鍚屾暟浣嶅榻愩?br><br><br>浜屽垎鏌ユ壘32浣嶆暣鏁扮殑鍓嶅0涓暟<br>    榪? 閲岀敤鐨凜璇█錛屾垜鐩存帴Copy鐨凥acker's Delight涓婄殑浠g爜銆傝繖孌典唬鐮佸啓鎴怌瑕佸ソ鐪嬩簺錛屽啓鎴怭ascal鐨勮瘽浼氬嚭鐜板緢澶歜egin鍜宔nd錛屾悶寰椾唬鐮佸緢闅劇湅銆傜▼搴忔濇兂鏄簩鍒嗘煡鎵撅紝搴旇寰堢畝 鍗曪紝鎴戝氨涓嶇粏璇翠簡銆?br><code>int nlz(unsigned x)<br>{<br>   int n;<br><br>   if (x == 0) return(32);<br>   n = 1;<br>   if ((x >> 16) == 0) {n = n +16; x = x <<16;}<br>   if ((x >> 24) == 0) {n = n + 8; x = x << 8;}<br>   if ((x >> 28) == 0) {n = n + 4; x = x << 4;}<br>   if ((x >> 30) == 0) {n = n + 2; x = x << 2;}<br>   n = n - (x >> 31);<br>   return n;<br>}</code><br><br><br>鍙敤浣嶈繍綆楁潵鍙? 緇濆鍊?br>    榪欐槸涓涓潪甯告湁瓚g殑闂銆傚ぇ瀹跺厛鑷繁鎯蟲兂鍚э紝Ctrl+A鏄劇ず絳旀銆?br>    絳旀錛氬亣璁緓涓?2浣嶆暣鏁幫紝鍒檟 xor (not (x shr 31) + 1) + x shr 31鐨勭粨鏋滄槸x鐨勭粷瀵瑰?br>    x shr 31鏄簩榪涘埗鐨勬渶楂樹綅錛屽畠鐢ㄦ潵琛ㄧずx鐨勭鍙楓傚鏋滃畠涓?錛坸涓烘錛夛紝鍒檔ot (x shr 31) + 1絳変簬$00000000錛屽紓鎴栦換浣曟暟緇撴灉閮戒笉鍙橈紱濡傛灉鏈楂樹綅涓?錛坸涓鴻礋錛夛紝鍒檔ot (x shr 31) + 1絳変簬$FFFFFFFF錛寈寮傛垨瀹冪浉褰撲簬鎵鏈夋暟浣嶅彇鍙嶏紝寮傛垨瀹屽悗鍐嶅姞涓銆?br><br><br>楂樹綆浣嶄氦鎹?br>    <a target="_blank">榪欎釜棰?/a>瀹為檯涓婃槸鎴戝嚭鐨勶紝鍋氫負瀛︽牎鍐呴儴NOIp妯℃嫙璧涚殑絎竴棰樸傞鐩槸榪欐牱錛?br><br> </p> <blockquote>    緇欏嚭涓涓皬浜?^32鐨勬鏁存暟銆傝繖涓暟鍙互鐢ㄤ竴涓?2浣嶇殑浜岃繘鍒舵暟琛ㄧず錛堜笉瓚?2浣嶇敤0琛ヨ凍錛夈傛垜浠О榪欎釜浜岃繘 鍒舵暟鐨勫墠16浣嶄負“楂樹綅”錛屽悗16浣嶄負“浣庝綅”銆傚皢瀹冪殑楂樹綆浣嶄氦鎹紝鎴戜滑鍙互寰楀埌涓涓柊鐨勬暟銆傝瘯闂繖涓柊鐨勬暟鏄灝戯紙鐢ㄥ崄榪涘埗琛ㄧず錛夈?br>銆銆渚嬪錛? 鏁?314520鐢ㄤ簩榪涘埗琛ㄧず涓?000 0000 0001 0100 0000 1110 1101 1000錛堟坊鍔犱簡11涓墠瀵?琛ヨ凍涓?2浣嶏級錛屽叾涓墠16浣嶄負楂樹綅錛屽嵆0000 0000 0001 0100錛涘悗16浣嶄負浣庝綅錛屽嵆0000 1110 1101 1000銆傚皢瀹冪殑楂樹綆浣嶈繘琛屼氦鎹紝鎴戜滑寰楀埌浜嗕竴涓柊鐨勪簩榪涘埗鏁?000 1110 1101 1000 0000 0000 0001 0100銆傚畠鍗蟲槸鍗佽繘鍒剁殑249036820銆? <p> </p> </blockquote> <p><br>    褰撴椂鍑犱箮娌℃湁浜烘兂鍒扮敤涓鍙ヤ綅鎿嶄綔鏉ヤ唬鏇垮啑闀跨殑紼嬪簭銆備嬌鐢ㄤ綅榪愮畻鐨勮瘽涓ゅ彞璇濆氨瀹屼簡銆?br><code>var<br>   n:dword;<br>begin<br>   readln( n );<br>   writeln( (n shr 16) or (n  shl 16) );<br>end.</code><br>    鑰屼簨瀹炰笂錛孭ascal鏈変竴涓郴緇熷嚱鏁皊wap鐩存帴灝卞彲浠ョ敤銆?br><br><br>浜? 榪涘埗閫嗗簭<br>    涓嬮潰鐨勭▼搴忚鍏ヤ竴涓?2浣嶆暣鏁板茍杈撳嚭瀹冪殑浜岃繘鍒跺掑簭鍚庢墍琛ㄧず鐨勬暟銆?br>    杈撳叆錛? 1314520    錛堜簩榪涘埗涓?0000000000101000000111011011000錛?br>    杈撳嚭錛? 460335104  錛堜簩榪涘埗涓?0011011011100000010100000000000錛?br><code>var<br>   x:dword;<br>begin<br>   readln(x);<br>   x := (x and $55555555) shl  1 or (x and $AAAAAAAA) shr  1;<br>   x := (x and $33333333) shl  2 or (x and $CCCCCCCC) shr  2;<br>   x := (x and $0F0F0F0F) shl  4 or (x and $F0F0F0F0) shr  4;<br>   x := (x and $00FF00FF) shl  8 or (x and $FF00FF00) shr  8;<br>   x := (x and $0000FFFF) shl 16 or (x and $FFFF0000) shr 16;<br>   writeln(x);<br>end.</code><br>    瀹冪殑鍘熺悊鍜屽垰鎵嶆眰浜岃繘鍒朵腑1 鐨勪釜鏁伴偅涓緥棰樻槸澶ц嚧鐩稿悓鐨勩傜▼搴忛鍏堜氦鎹㈡瘡鐩擱偦涓や綅涓婄殑鏁幫紝浠ュ悗鎶婁簰鐩鎬氦鎹㈣繃鐨勬暟鐪嬫垚涓涓暣浣擄紝緇х畫榪涜浠?浣嶄負鍗曚綅銆佷互4浣嶄負鍗曚綅鐨勫乏鍙沖鎹㈡搷浣溿傛垜 浠啀嬈$敤8浣嶆暣鏁?11鏉ユ紨紺虹▼搴忔墽琛岃繃紼嬶細<br>+---+---+---+---+---+---+---+---+<br>| 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 |   <---鍘熸暟<br>+---+---+---+---+---+---+---+---+<br>|  1 1  |  1 0  |  0 0  |  1 1  |   <---絎竴嬈¤繍綆楀悗<br>+-------+-------+-------+-------+<br>|    1 0 1 1    |    1 1 0 0    |   <---絎簩嬈¤繍綆楀悗<br>+---------------+---------------+<br>|        1 1 0 0 1 0 1 1        |   <---絎笁嬈¤繍綆楀悗<br>+-------------------------------+<br><br><br>Copyright 涔熷緢寮?br><code>writeln('Matrix' , 42 XOR 105 , '鍘熷垱錛岃漿璐磋娉ㄦ槑鍑哄');</code></p> <a title="Permanent link to 浣嶈繍綆楃畝浠嬪強瀹炵敤鎶宸э紙涓夛級錛氳繘闃剁瘒(2)" rel="bookmark">浣? 榪愮畻綆浠嬪強瀹炵敤鎶宸э紙涓夛級錛氳繘闃剁瘒(2)</a> <br> <p>浠婂ぉ鎴戜滑鏉ョ湅涓や釜紼嶅井澶嶆潅涓鐐圭殑渚嬪瓙銆?br><br>n鐨囧悗闂浣嶈繍綆楃増<br>    n鐨囧悗闂鏄暐鎴戝氨涓嶈浜嗗惂錛屽緙栫▼鐨勮偗瀹氶兘瑙佽繃銆備笅闈? 鐨勫崄澶氳浠g爜鏄痭鐨囧悗闂鐨勪竴涓珮鏁堜綅榪愮畻紼嬪簭錛岀湅鍒拌繃鐨勪漢閮藉じ瀹冪墰銆傚垵濮嬫椂錛寀pperlim:=(1 shl n)-1銆備富紼嬪簭璋冪敤test(0,0,0)鍚巗um鐨勫煎氨鏄痭鐨囧悗鎬葷殑瑙f暟銆傛嬁榪欎釜鍘諱氦USACO錛?.3s錛屾毚鐖姐?br><code>procedure test(row,ld,rd:longint);<br>var<br>      pos,p:longint;<br>begin<br><br>{ 1}  if row<>upperlim then<br>{ 2}  begin<br>{ 3}     pos:=upperlim and not (row or ld or rd);<br>{ 4}     while pos<>0 do<br>{ 5}     begin<br>{ 6}        p:=pos and -pos;<br>{ 7}        pos:=pos-p;<br>{ 8}        test(row+p,(ld+p)shl 1,(rd+p)shr 1);<br>{ 9}     end;<br>{10}  end<br>{11}  else inc(sum);<br><br>end;</code><br>    涔? 涓鐪嬩技涔庡畬鍏ㄦ懜涓嶇潃澶磋剳錛屽疄闄呬笂鏁翠釜紼嬪簭鏄潪甯稿鏄撶悊瑙g殑銆傝繖閲岃繕鏄緩璁ぇ瀹惰嚜宸卞崟姝ヨ繍琛屼竴鎺㈢┒绔燂紝瀹炲湪娌$爺絀跺嚭鏉ュ啀鐪嬩笅闈㈢殑瑙h銆?br><br><img alt="" src="http://www.matrix67.com/blogimage/200707261.gif" border="0">  <img alt="" src="http://www.matrix67.com/blogimage/200707262.gif" border="0"><br>    鍜? 鏅氱畻娉曚竴鏍鳳紝榪欐槸涓涓掑綊榪囩▼錛岀▼搴忎竴琛屼竴琛屽湴瀵繪壘鍙互鏀劇殗鍚庣殑鍦版柟銆傝繃紼嬪甫涓変釜鍙傛暟錛宺ow銆乴d鍜宺d錛屽垎鍒〃紺哄湪綰靛垪鍜屼袱涓瑙掔嚎鏂瑰悜鐨勯檺鍒舵潯浠? 涓嬭繖涓琛岀殑鍝簺鍦版柟涓嶈兘鏀俱傛垜浠互6×6鐨勬鐩樹負渚嬶紝鐪嬬湅紼嬪簭鏄庝箞宸ヤ綔鐨勩傚亣璁劇幇鍦ㄥ凡緇忛掑綊鍒扮鍥涘眰錛屽墠涓夊眰鏀劇殑瀛愬凡緇忔爣鍦ㄥ乏鍥句笂浜嗐傜孩鑹層佽摑鑹插拰緇胯壊 鐨勭嚎鍒嗗埆琛ㄧず涓変釜鏂瑰悜涓婃湁鍐茬獊鐨勪綅緗紝浣嶄簬璇ヨ涓婄殑鍐茬獊浣嶇疆灝辯敤row銆乴d鍜宺d涓殑1鏉ヨ〃紺恒傛妸瀹冧滑涓変釜騫惰搗鏉ワ紝寰楀埌璇ヨ鎵鏈夌殑紱佷綅錛屽彇鍙嶅悗灝卞緱鍒版墍 鏈夊彲浠ユ斁鐨勪綅緗紙鐢╬os鏉ヨ〃紺猴級銆傚墠闈㈣榪?a鐩稿綋浜巒ot a + 1錛岃繖閲岀殑浠g爜絎?琛屽氨鐩稿綋浜巔os and (not pos + 1)錛屽叾緇撴灉鏄彇鍑烘渶鍙寵竟鐨勯偅涓?銆傝繖鏍鳳紝p灝辮〃紺鴻琛岀殑鏌愪釜鍙互鏀懼瓙鐨勪綅緗紝鎶婂畠浠巔os涓Щ闄ゅ茍閫掑綊璋冪敤test榪囩▼銆傛敞鎰忛掑綊璋冪敤鏃朵笁涓弬鏁扮殑鍙? 鍖栵紝姣忎釜鍙傛暟閮藉姞涓婁簡涓涓浣嶏紝浣嗕袱涓瑙掔嚎鏂瑰悜鐨勭浣嶅涓嬩竴琛岀殑褰卞搷闇瑕佸鉤縐諱竴浣嶃傛渶鍚庯紝濡傛灉閫掑綊鍒版煇涓椂鍊欏彂鐜皉ow=111111浜嗭紝璇存槑鍏釜鐨囧悗 鍏ㄦ斁榪涘幓浜嗭紝姝ゆ椂紼嬪簭浠庣1琛岃煩鍒扮11琛岋紝鎵懼埌鐨勮В鐨勪釜鏁板姞涓銆?br><br>    ~~~~====~~~~=====   鍗庝附鐨勫垎鍓茬嚎   =====~~~~====~~~~<br><br>Gray鐮?br>    鍋囧鎴戞湁4涓綔鍦ㄧ殑GF錛屾垜闇瑕佸喅瀹氭渶緇堝埌搴曞拰璋佸湪涓璧楓備竴涓畝鍗曠殑鍔炴硶 灝辨槸錛屼緷嬈″拰姣忎釜MM浜ゅ線涓孌墊椂闂達紝鏈鍚庨夋嫨緇欐垜甯︽潵鐨?#8220;婊℃剰搴?#8221;鏈澶х殑MM銆備絾鐪嬩簡<a target="_blank">dd鐗涚殑鐞嗚</a>鍚庯紝 浜嬫儏寮濮嬪彉寰楀鏉備簡錛氭垜鍙互閫夋嫨鍜屽涓狹M鍦ㄤ竴璧楓傝繖鏍鳳紝闇瑕佽冩牳鐨勭姸鎬佸彉鎴愪簡2^4=16縐嶏紙褰撶劧鍖呮嫭0000榪欎竴鐘舵侊紝鍥犱負鎴戞湁鍙兘鏄幓鐠冿級銆傜幇鍦ㄧ殑 闂灝辨槸錛屾垜搴旇鐢ㄤ粈涔堥『搴忔潵閬嶅巻榪?6縐嶇姸鎬佸憿錛?br>    浼犵粺鐨勫仛娉曟槸錛岀敤浜岃繘鍒舵暟鐨勯『搴忔潵閬嶅巻鎵鏈夊彲鑳界殑緇勫悎銆備篃灝辨槸璇達紝鎴戦渶瑕佷互 0000->0001->0010->0011->0100->…->1111榪欐牱鐨勯『搴忓姣忕鐘舵佽繘琛屾祴璇曘傝繖涓? 欏哄簭寰堜笉縐戝錛屽緢澶氭椂鍊欑姸鎬佺殑杞Щ閮藉緢鑰楁椂銆傛瘮濡備粠0111鍒?000鏃舵垜闇瑕佹殏鏃剁敥鎺夊綋鍓嶆墍鏈夌殑3涓狹M錛岀劧鍚庡幓鎶婄4涓狹M銆傚悓鏃舵敼鍙樻墍鏈塎M涓庢垜鐨? 鍏崇郴鏄竴浠朵綍絳夊法澶х殑宸ョ▼鍟娿傚洜姝わ紝鎴戝笇鏈涚煡閬擄紝鏄惁鏈変竴縐嶆柟娉曞彲浠ヤ嬌寰楋紝浠庢病鏈塎M榪欎竴鐘舵佸嚭鍙戯紝姣忔鍙敼鍙樻垜鍜屼竴涓狹M鐨勫叧緋伙紙榪芥垨鑰呯敥錛夛紝15嬈℃搷 浣滃悗鎭板ソ閬嶅巻瀹屾墍鏈夊彲鑳界殑緇勫悎錛堟渶緇堢姸鎬佷笉涓瀹氭槸1111錛夈傚ぇ瀹惰嚜宸卞厛璇曚竴璇曠湅琛屼笉琛屻?br>    瑙e喅榪欎釜闂鐨勬柟娉曞緢宸у銆傛垜浠潵璇存槑錛屽亣濡傛垜 浠凡緇忕煡閬撲簡n=2鏃剁殑鍚堟硶閬嶅巻欏哄簭錛屾垜浠浣曞緱鍒皀=3鐨勯亶鍘嗛『搴忋傛樉鐒訛紝n=2鐨勯亶鍘嗛『搴忓涓嬶細<br><br>00<br>01<br>11<br>10<br><br>    浣? 鍙兘宸茬粡鎯沖埌浜嗗浣曟妸涓婇潰鐨勯亶鍘嗛『搴忔墿灞曞埌n=3鐨勬儏鍐點俷=3鏃朵竴鍏辨湁8縐嶇姸鎬侊紝鍏朵腑鍓嶉潰4涓妸n=2鐨勯亶鍘嗛『搴忕収鎼笅鏉ワ紝鐒跺悗鎶婂畠浠縐扮炕鎶樹笅鍘誨茍鍦? 鏈鍓嶉潰鍔犱笂1浣滀負鍚庨潰4涓姸鎬侊細<br><br>000<br>001<br>011<br>010  ↑<br>--------<br>110  ↓<br>111<br>101<br>100<br><br>    鐢? 榪欑鏂規(guī)硶寰楀埌鐨勯亶鍘嗛『搴忔樉鐒剁鍚堣姹傘傞鍏堬紝涓婇潰8涓姸鎬佹伆濂芥槸n=3鏃剁殑鎵鏈?縐嶇粍鍚堬紝鍥犱負瀹冧滑鏄湪n=2鐨勫叏閮ㄥ洓縐嶇粍鍚堢殑鍩虹涓婅冭檻閫変笉閫夌3涓厓绱? 鎵寰楀埌鐨勩傜劧鍚庢垜浠湅鍒幫紝鍚庨潰涓鍗婄殑鐘舵佸簲璇ュ拰鍓嶉潰涓鍗婁竴鏍鋒弧瓚?#8220;鐩擱偦鐘舵侀棿浠呬竴浣嶄笉鍚?#8221;鐨勯檺鍒訛紝鑰?#8220;闀滈潰”澶勫垯鏄渶鍓嶉潰閭d竴浣嶆暟涓嶅悓銆傚啀嬈$炕鎶樹笁闃墮亶鍘? 欏哄簭錛屾垜浠氨寰楀埌浜嗗垰鎵嶇殑闂鐨勭瓟妗堬細<br><br>0000<br>0001<br>0011<br>0010<br>0110<br>0111<br>0101<br>0100<br>1100<br>1101<br>1111<br>1110<br>1010<br>1011<br>1001<br>1000<br><br>    榪? 縐嶉亶鍘嗛『搴忎綔涓轟竴縐嶇紪鐮佹柟寮忓瓨鍦紝鍙仛Gray鐮侊紙鍐欎釜涓枃璁╄湗铔涙潵鎶擄細鏍奸浄鐮侊級銆傚畠鐨勫簲鐢ㄨ寖鍥村緢騫褲傛瘮濡傦紝n闃剁殑Gray鐮佺浉褰撲簬鍦╪緇寸珛鏂逛綋涓婄殑 Hamilton鍥炶礬錛屽洜涓烘部鐫绔嬫柟浣撲笂鐨勮竟璧頒竴姝ワ紝n緇村潗鏍囦腑鍙細鏈変竴涓兼敼鍙樸傚啀姣斿錛孏ray鐮佸拰Hanoi濉旈棶棰樼瓑浠楓侴ray鐮佹敼鍙樼殑鏄鍑犱釜 鏁幫紝Hanoi濉斿氨璇ョЩ鍔ㄥ摢涓洏瀛愩傛瘮濡傦紝3闃剁殑Gray鐮佹瘡嬈℃敼鍙樼殑鍏冪礌鎵鍦ㄤ綅緗緷嬈′負1-2-1-3-1-2-1錛岃繖姝eソ鏄?闃禜anoi濉旀瘡嬈$Щ鍔? 鐩樺瓙緙栧彿銆傚鏋滄垜浠彲浠ュ揩閫熸眰鍑篏ray鐮佺殑絎琻涓暟鏄灝戯紝鎴戜滑灝卞彲浠ヨ緭鍑轟換鎰忔鏁板悗Hanoi濉旂殑縐誨姩姝ラ銆傜幇鍦ㄦ垜鍛婅瘔浣狅紝Gray鐮佺殑絎琻涓暟錛堜粠 0綆楄搗錛夋槸n xor (n shr 1)錛屼綘鑳芥兂鍑烘潵榪欐槸涓轟粈涔堝悧錛熷厛鑷繁鎯蟲兂鍚с?br><br>    涓嬮潰鎴戜滑鎶婁簩榪涘埗鏁板拰Gray鐮侀兘鍐欏湪涓? 闈紝鍙互鐪嬪埌宸﹁竟鐨勬暟寮傛垨鑷韓鍙崇Щ鐨勭粨鏋滃氨絳変簬鍙寵竟鐨勬暟銆?br><br>浜岃繘鍒舵暟   Gray鐮?br>   000       000<br>   001       001<br>   010       011<br>   011       010<br>   100       110<br>   101       111<br>   110       101<br>   111       100<br><br>    浠? 浜岃繘鍒舵暟鐨勮搴︾湅錛?#8220;闀滃儚”浣嶇疆涓婄殑鏁板嵆鏄鍘熸暟榪涜not榪愮畻鍚庣殑緇撴灉銆傛瘮濡傦紝絎?涓暟010鍜屽掓暟絎?涓暟101鐨勬瘡涓浣嶉兘姝eソ鐩稿弽銆傚亣璁捐繖涓や釜鏁板垎 鍒負x鍜寉錛岄偅涔坸 xor (x shr 1)鍜寉 xor (y shr 1)鐨勭粨鏋滃彧鏈変竴鐐逛笉鍚岋細鍚庤呯殑棣栦綅鏄?錛屽墠鑰呯殑棣栦綅鏄?銆傝岃繖姝eソ鏄疓ray鐮佺殑鐢熸垚鏂規(guī)硶銆傝繖灝辮鏄庝簡錛孏ray鐮佺殑絎琻涓暟紜疄鏄痭 xor (n shr 1)銆?br><br>    浠婂勾鍥涙湀浠?a target="_blank">mashuo</a>緇? 鎴戠湅浜?a target="_blank">榪欓亾棰?/a>錛屾槸浜岀淮鎰忎箟涓婄殑Gray鐮併傞鐩ぇ鎰忔槸璇達紝鎶?鍒?^(n+m)-1鐨勬暟鍐欐垚2^n * 2^m鐨勭煩闃碉紝浣垮緱浣嶇疆鐩擱偦涓ゆ暟鐨勪簩榪涘埗琛ㄧず鍙湁涓浣嶄箣宸傜瓟妗堝叾瀹炲緢綆鍗曪紝鎵鏈夋暟閮芥槸鐢眒浣嶇殑Gray鐮佸拰n浣岹ray鐮佹嫾鎺ヨ屾垚錛岄渶瑕佺敤宸︾Щ鎿嶄綔鍜? or榪愮畻瀹屾垚銆傚畬鏁寸殑浠g爜濡備笅錛?br><code>var<br>   x,y,m,n,u:longint;<br>begin<br>   readln(m,n);<br>   for x:=0 to 1 shl m-1 do begin<br>      u:=(x xor (x shr 1)) shl n; //杈撳嚭鏁扮殑宸﹁竟鏄竴涓猰浣嶇殑Gray鐮?br>      for y:=0 to 1 shl n-1 do<br>         write(u or (y xor (y shr 1)),' '); //騫朵笂涓涓猲浣岹ray鐮?br>      writeln;<br>   end;<br>end.</code><br><br>Matrix67鍘熷垱<br>杞創(chuàng)璇鋒敞鏄庡嚭澶?/p> <a title="Permanent link to 浣嶈繍綆楃畝浠嬪強瀹炵敤鎶宸э紙鍥涳級錛氬疄鎴樼瘒" rel="bookmark"><strong> 浣嶈繍綆楃畝浠嬪強瀹炵敤鎶宸э紙鍥涳級錛氬疄鎴樼瘒</strong> </a><br>涓嬮潰 鍒嗕韓鐨勬槸鎴戣嚜宸卞啓鐨勪笁涓唬鐮侊紝閲岄潰鏈変簺棰樼洰涔熸槸鎴戣嚜宸卞嚭鐨勩傝繖浜涗唬鐮侀兘鏄湪鎴戠殑Pascal鏃朵唬鍐欑殑錛屾仌涓嶆彁渚汣璇█浜嗐備唬鐮佸啓寰楀茍涓嶅ソ錛屾垜鍙槸鎯沖憡璇夊ぇ 瀹朵綅榪愮畻鍦ㄥ疄鎴樹腑鐨勫簲鐢紝鍖呮嫭浜嗘悳绱㈠拰鐘舵佸帇緙〥P鏂歸潰鐨勯鐩傚叾瀹炲ぇ瀹跺彲浠ュ湪緗戜笂鎵懼埌鏇村鐢ㄤ綅榪愮畻浼樺寲鐨勯鐩紝榪欓噷鏁寸悊鍑轟竴浜涜嚜宸卞啓鐨勪唬鐮侊紝鍙槸涓轟簡鍘? 鍒涚郴鍒楁枃绔犵殑瀹屾暣鎬с傝繖涓緋誨垪鏂囩珷鍒拌繖閲屽氨緇撴潫浜嗭紝甯屾湜澶у鑳芥湁鎵鏀惰幏銆?br>    Matrix67鍘熷垱錛岃漿璐磋娉ㄦ槑鍑哄銆?br><br><br> <blockquote>Problem : 璐硅В鐨勫紑鍏?br><br><a target="_blank"><strong> <font color="#618898">棰樼洰鏉ユ簮</font></strong> </a><br>    06 騫碞OIp妯℃嫙璧涳紙涓錛?by Matrix67 絎洓棰?br><br>闂鎻忚堪<br>    浣犵帺榪?#8220;鎷夌伅”娓告垙鍚楋紵25鐩忕伅鎺掓垚涓涓?×5鐨勬柟 褰€傛瘡涓涓伅閮芥湁涓涓紑鍏籌紝娓告垙鑰呭彲浠ユ敼鍙樺畠鐨勭姸鎬併傛瘡涓姝ワ紝娓告垙鑰呭彲浠ユ敼鍙樻煇涓涓伅鐨勭姸鎬併傛父鎴忚呮敼鍙樹竴涓伅鐨勭姸鎬佷細浜х敓榪為攣鍙嶅簲錛氬拰榪欎釜鐏笂涓嬪乏鍙崇浉 閭?cè)潥勭伅涔熻鐩稿簲鍦版敼鍙樺叾鐘舵併?br>    鎴戜滑鐢ㄦ暟瀛?#8220;1”琛ㄧず涓鐩忓紑鐫鐨勭伅錛岀敤鏁板瓧“0”琛ㄧず鍏崇潃鐨勭伅銆備笅闈㈣繖縐嶇姸鎬?br><br>10111<br>01101<br>10111<br>10000<br>11011<br><br>    鍦? 鏀瑰彉浜嗘渶宸︿笂瑙掔殑鐏殑鐘舵佸悗灝嗗彉鎴愶細<br><br>01111<br>11101<br>10111<br>10000<br>11011<br><br>    鍐? 鏀瑰彉瀹冩涓棿鐨勭伅鍚庣姸鎬佸皢鍙樻垚錛?br><br>01111<br>11001<br>11001<br>10100<br>11011<br><br>    緇? 瀹氫竴浜涙父鎴忕殑鍒濆鐘舵侊紝緙栧啓紼嬪簭鍒ゆ柇娓告垙鑰呮槸鍚﹀彲鑳藉湪6姝ヤ互鍐呬嬌鎵鏈夌殑鐏兘鍙樹寒銆?br><br>杈撳叆鏍煎紡<br>    絎竴琛屾湁涓涓鏁存暟n錛屼唬琛ㄦ暟 鎹腑鍏辨湁n涓緟瑙e喅鐨勬父鎴忓垵濮嬬姸鎬併?br>    浠ヤ笅鑻ュ共琛屾暟鎹垎涓簄緇勶紝姣忕粍鏁版嵁鏈?琛岋紝姣忚5涓瓧絎︺傛瘡緇勬暟鎹弿榪頒簡涓涓父鎴忕殑鍒濆鐘舵併傚悇緇勬暟 鎹棿鐢ㄤ竴涓┖琛屽垎闅斻?br>    瀵逛簬30%鐨勬暟鎹紝n<=5錛?br>    瀵逛簬100%鐨勬暟鎹紝n<=500銆?br><br>杈? 鍑烘牸寮?br>    杈撳嚭鏁版嵁涓鍏辨湁n琛岋紝姣忚鏈変竴涓皬浜庣瓑浜?鐨勬暣鏁幫紝瀹冭〃紺哄浜庤緭鍏ユ暟鎹腑瀵瑰簲鐨勬父鎴忕姸鎬佹渶灝戦渶瑕佸嚑姝ユ墠鑳戒嬌鎵鏈夌伅鍙樹寒銆?br>    瀵? 浜庢煇涓涓父鎴忓垵濮嬬姸鎬侊紝鑻?姝ヤ互鍐呮棤娉曚嬌鎵鏈夌伅鍙樹寒錛岃杈撳嚭“-1”銆?br><br>鏍蜂緥杈撳叆<br>3<br>00111<br>01011<br>10001<br>11010<br>11100<br><br>11101<br>11101<br>11110<br>11111<br>11111<br><br>01111<br>11111<br>11111<br>11111<br>11111<br><br>鏍? 渚嬭緭鍑?br>3<br>2<br>-1 <p> </p> </blockquote> <p><br><br>紼嬪簭浠g爜<br><code>const<br>   BigPrime=3214567;<br>   MaxStep=6;<br>type<br>   pointer=^rec;<br>   rec=record<br>         v:longint;<br>         step:integer;<br>         next:pointer;<br>       end;<br><br>var<br>   total:longint;<br>   hash:array[0..BigPrime-1]of pointer;<br>   q:array[1..400000]of rec;<br><br>function update(a:longint;p:integer):longint;<br>begin<br>   a:=a xor (1 shl p);<br>   if p mod 5<>0 then a:=a xor (1 shl (p-1));<br>   if (p+1) mod 5<>0 then a:=a xor (1 shl (p+1));<br>   if p<20 then a:=a xor (1 shl (p+5));<br>   if p>4 then a:=a xor (1 shl (p-5));<br>   exit(a);<br>end;<br><br>function find(a:longint;step:integer):boolean;<br>var<br>   now:pointer;<br>begin<br>   now:=hash[a mod BigPrime];<br>   while now<>nil do<br>   begin<br>      if now^.v=a then exit(true);<br>      now:=now^.next;<br>   end;<br><br>   new(now);<br>   now^.v:=a;<br>   now^.step:=step;<br>   now^.next:=hash[a mod BigPrime];<br>   hash[a mod BigPrime]:=now;<br>   total:=total+1;<br>   exit(false);<br>end;<br><br>procedure solve;<br>var<br>   p:integer;<br>   close:longint=0;<br>   open:longint=1;<br>begin<br>   find(1 shl 25-1,0);<br>   q[1].v:=1 shl 25-1;<br>   q[1].step:=0;<br>   repeat<br>      inc(close);<br>      for p:=0 to 24 do<br>         if not find(update(q[close].v,p),q[close].step+1) and (q[close].step+1<MaxStep) then<br>         begin<br>            open:=open+1;<br>            q[open].v:=update(q[close].v,p);<br>            q[open].step:=q[close].step+1;<br>         end;<br>   until close>=open;<br>end;<br><br>procedure print(a:longint);<br>var<br>   now:pointer;<br>begin<br>   now:=hash[a mod BigPrime];<br>   while now<>nil do<br>   begin<br>      if now^.v=a then<br>      begin<br>         writeln(now^.step);<br>         exit;<br>      end;<br>      now:=now^.next;<br>   end;<br>   writeln(-1);<br>end;<br><br>procedure main;<br>var<br>   ch:char;<br>   i,j,n:integer;<br>   t:longint;<br>begin<br>   readln(n);<br>   for i:=1 to n do<br>   begin<br>      t:=0;<br>      for j:=1 to 25 do<br>      begin<br>         read(ch);<br>         t:=t*2+ord(ch)-48;<br>         if j mod 5=0 then readln;<br>      end;<br>      print(t);<br>      if i<n then readln;<br>   end;<br>end;<br><br>begin<br>   solve;<br>   main;<br>end.</code><br><br><strong> =======================  鎬? 鎰熺殑鍒嗗壊綰?nbsp; =======================</strong> <br><br><br> </p> <blockquote>Problem : garden / 鍜孧M閫涜姳鍥?br><br>棰樼洰鏉ユ簮<br>    <a target="_blank"><strong> <font color="#618898">07騫碝atrix67鐢熸棩閭璇瘋禌</font></strong> </a>絎? 鍥涢<br><br>闂鎻忚堪<br>    鑺卞洯璁捐寮鴻皟錛岀畝鍗曞氨鏄編銆侻atrix67甯稿幓鐨勮姳鍥湁鐫闈炲父綆鍗曠殑甯冨眬錛氳姳鍥殑鎵鏈夋櫙鐐圭殑浣嶇疆閮芥槸“瀵? 榻?#8221;浜嗙殑錛岃繖浜涙櫙鐐瑰彲浠ョ湅浣滄槸騫抽潰鍧愭爣涓婄殑鏍肩偣銆傜浉閭?cè)潥勬櫙鐐逛箣闂存湁灏忚矾鐩笜q烇紝榪欎簺灝忚礬鍏ㄩ儴騫寵浜庡潗鏍囪醬銆傛櫙鐐瑰拰灝忚礬緇勬垚浜嗕竴涓?#8220;涓嶅畬鏁寸殑緗戞牸”銆?br>    涓 涓吀鍨嬬殑鑺卞洯甯冨眬濡傚乏鍥炬墍紺恒傝姳鍥竷灞鍦?琛?鍒楃殑緗戞牸涓婏紝鑺卞洯鐨?6涓櫙鐐圭殑浣嶇疆鐢ㄧ孩鑹叉爣娉ㄥ湪浜嗗浘涓傞粦鑹茬嚎鏉¤〃紺烘櫙鐐歸棿鐨勫皬璺紝鍏朵綑鐏拌壊閮ㄥ垎瀹為檯騫朵笉 瀛樺湪銆?br>        <img alt="" src="http://www.matrix67.com/data/prob4.gif" border="0"><br><br>    Matrix67 鐨勭敓鏃ラ偅澶╋紝浠栬甯︾潃浠栫殑MM鍦ㄨ姳鍥噷娓哥帺銆侻atrix67涓嶄細甯M涓ゆ緇忚繃鍚屼竴涓櫙鐐癸紝鍥犳姣忎釜鏅偣鏈澶氳娓歌涓嬈°備粬鍜屼粬鐨凪M杈硅蛋杈硅亰錛屼粬浠槸 濡傛鐨勬姇鍏ヤ互鑷翠簬浠栦滑浠庝笉浼?#8220;涓誨姩鍦版嫄寮?#8221;銆備篃灝辨槸璇達紝闄ら潪鍓嶆柟宸叉病鏈夋櫙鐐規(guī)垨鏄墠鏂圭殑鏅偣宸茬粡璁塊棶榪囷紝鍚﹀垯浠栦滑浼氫竴鐩村線鍓嶈蛋涓嬪幓銆傚綋鍓嶆柟鏅偣涓嶅瓨鍦ㄦ垨宸叉父 瑙堣繃鏃訛紝Matrix67浼氬甫MM鍙﹂変竴涓柟鍚戠戶緇墠榪涖傜敱浜庢櫙鐐逛釜鏁版湁闄愶紝璁塊棶榪囩殑鏅偣灝嗚秺鏉ヨ秺澶氾紝榪熸棭浼氬嚭鐜頒笉鑳藉啀璧扮殑鎯呭喌錛堝嵆鍥涗釜鏂瑰悜涓婄殑鐩擱偦鏅偣 閮借闂繃浜嗭級錛屾鏃朵粬浠皢緇撴潫鑺卞洯鐨勬父瑙堛侻atrix67甯屾湜鐭ラ亾浠ヨ繖縐嶆柟寮忔父瑙堣姳鍥槸鍚︽湁鍙兘閬嶅巻鎵鏈夌殑鏅偣銆侻atrix67鍙互閫夋嫨浠庝換鎰忎竴涓櫙 鐐瑰紑濮嬫父瑙堬紝浠ヤ換鎰忎竴涓櫙鐐圭粨鏉熴?br>    鍦ㄤ笂鍥炬墍紺虹殑鑺卞洯甯冨眬涓紝涓縐嶅彲鑳界殑娓歌鏂瑰紡濡傚彸鍥炬墍紺恒傝繖縐嶆祻瑙堟柟寮忎粠(1,2)鍑哄彂錛屼互(2,4) 緇撴潫錛岀粡榪囨瘡涓櫙鐐規(guī)伆濂戒竴嬈°?br><br>杈撳叆鏍煎紡<br>    絎竴琛岃緭鍏ヤ袱涓敤絀烘牸闅斿紑鐨勬鏁存暟m鍜宯錛岃〃紺鴻姳鍥甯冨眬鍦╩琛宯鍒楃殑緗戞牸涓娿?br>    浠? 涓媘琛屾瘡琛宯涓瓧絎︼紝瀛楃“0”琛ㄧず璇ヤ綅緗病鏈夋櫙鐐癸紝瀛楃“1”琛ㄧず瀵瑰簲浣嶇疆鏈夋櫙鐐廣傝繖浜涙暟瀛椾箣闂存病鏈夌┖鏍箋?br><br>杈撳嚭鏍煎紡<br>    浣? 鐨勭▼搴忛渶瑕佸鎵炬弧瓚?#8220;涓嶄富鍔ㄦ嫄寮?#8221;鎬ц川涓旈亶鍘嗘墍鏈夋櫙鐐圭殑娓歌璺嚎銆?br>    濡傛灉娌℃湁榪欐牱鐨勬父瑙堣礬綰匡紝璇瘋緭鍑轟竴琛?#8220;Impossible”錛堜笉甯﹀紩 鍙鳳紝娉ㄦ剰澶у皬鍐欙級銆?br>    濡傛灉瀛樺湪娓歌璺嚎錛岃渚濇杈撳嚭浣犵殑鏂規(guī)涓闂殑鏅偣鐨勫潗鏍囷紝姣忚杈撳嚭涓涓傚潗鏍囩殑琛ㄧず鏍煎紡涓?#8220;(x,y)”錛屼唬琛ㄧx 琛岀y鍒椼?br>    濡傛灉鏈夊縐嶆柟妗堬紝浣犲彧闇瑕佽緭鍑哄叾涓竴縐嶅嵆鍙傝瘎嫻嬬郴緇熷彲浠ュ垽鏂綘鐨勬柟妗堢殑姝g‘鎬с?br><br>鏍蜂緥杈撳叆<br>6 4<br>1100<br>1001<br>1111<br>1100<br>1110<br>1110<br><br>鏍? 渚嬭緭鍑?br>(1,2)<br>(1,1)<br>(2,1)<br>(3,1)<br>(4,1)<br>(5,1)<br>(6,1)<br>(6,2)<br>(6,3)<br>(5,3)<br>(5,2)<br>(4,2)<br>(3,2)<br>(3,3)<br>(3,4)<br>(2,4)<br><br>鏁? 鎹妯?br>    瀵逛簬30%鐨勬暟鎹紝n,m<=5錛?br>    瀵逛簬100%鐨勬暟鎹紝n,m<=10銆? <p> </p> </blockquote> <p><br><br>紼嬪簭浠g爜錛?br><code>program garden;<br><br>const<br>   dir:array[1..4,1..2]of integer=<br>     ((1,0),(0,1),(-1,0),(0,-1));<br><br>type<br>   arr=array[1..10]of integer;<br>   rec=record x,y:integer;end;<br><br>var<br>   map:array[0..11,0..11]of boolean;<br>   ans:array[1..100]of rec;<br>   n,m,max:integer;<br>   step:integer=1;<br>   state:arr;<br><br>procedure readp;<br>var<br>   i,j:integer;<br>   ch:char;<br>begin<br>   readln(m,n);<br>   for i:=1 to n do<br>   begin<br>      for j:=1 to m do<br>      begin<br>         read(ch);<br>         map[i,j]:=(ch='1');<br>         inc(max,ord( map[i,j] ))<br>      end;<br>   readln;<br>   end;<br>end;<br><br>procedure writep;<br>var<br>   i:integer;<br>begin<br>   for i:=1 to step do<br>      writeln( '(' , ans[i].x , ',' , ans[i].y , ')' );<br>end;<br><br>procedure solve(x,y:integer);<br>var<br>   tx,ty,d:integer;<br>   step_cache:integer;<br>   state_cache:arr;<br>begin<br>   step_cache:=step;<br>   state_cache:=state;<br>   if step=max then<br>   begin<br>      writep;<br>      exit;<br>   end;<br><br>   for d:=1 to 4 do<br>   begin<br>      tx:=x+dir[d,1];<br>      ty:=y+dir[d,2];<br>      while map[tx,ty] and ( not state[tx] and(1 shl (ty-1) )>0) do<br>      begin<br>         inc(step);<br>         ans[step].x:=tx;<br>         ans[step].y:=ty;<br>         state[tx]:=state[tx] or ( 1 shl (ty-1) );<br>         tx:=tx+dir[d,1];<br>         ty:=ty+dir[d,2];<br>      end;<br><br>      tx:=tx-dir[d,1];<br>      ty:=ty-dir[d,2];<br>      if (tx<>x) or (ty<>y) then solve(tx,ty);<br>      state:=state_cache;<br>      step:=step_cache;<br>   end;<br>end;<br><br>{====main====}<br>var<br>   i,j:integer;<br>begin<br>   assign(input,'garden.in');<br>   reset(input);<br>   assign(output,'garden.out');<br>   rewrite(output);<br><br>   readp;<br>   for i:=1 to n do<br>   for j:=1 to m do<br>     if map[i,j] then<br>     begin<br>        ans[1].x:=i;<br>        ans[1].y:=j;<br>        state[i]:=1 shl (j-1);<br>        solve(i,j);<br>        state[i]:=0;<br>     end;<br><br>   close(input);<br>   close(output);<br>end.</code><br><br><strong> =======================  鎬? 鎰熺殑鍒嗗壊綰?nbsp; =======================</strong> <br><br><br> </p> <blockquote>Problem : cowfood / 鐜夌背鍦?br><br>棰樼洰鏉ユ簮<br>    USACO鏈堣禌<br><br>闂? 棰樻弿榪?br>    鍐滃か綰︾堪璐拱浜嗕竴澶勮偉娌冪殑鐭╁艦鐗у満錛屽垎鎴怣*N(1<=M<=12; 1<=N<=12)涓牸瀛愩備粬鎯沖湪閭i噷鐨勪竴浜涙牸瀛愪腑縐嶆緹庡懗鐨勭帀綾熾傞仐鎲劇殑鏄紝鏈変簺鏍煎瓙鍖哄煙鐨勫湡鍦版槸璐槧鐨勶紝涓嶈兘鑰曠銆?br>    綺炬槑 鐨勭害緲扮煡閬撳ザ鐗涗滑榪涢鏃朵笉鍠滄鍜屽埆鐨勭墰鐩擱偦錛屾墍浠ヤ竴鏃﹀湪涓涓牸瀛愪腑縐嶆鐜夌背錛岄偅涔堜粬灝變笉浼氬湪鐩擱偦鐨勬牸瀛愪腑縐嶆錛屽嵆娌℃湁涓や釜琚変腑鐨勬牸瀛愭嫢鏈夊叕鍏辮竟銆備粬榪樻病 鏈夋渶緇堢‘瀹氬摢浜涙牸瀛愯閫夋嫨縐嶆鐜夌背銆?br>    浣滀負涓涓濇兂寮鏄庣殑浜猴紝鍐滃か綰︾堪甯屾湜鑰冭檻鎵鏈夊彲琛岀殑閫夋嫨鏍煎瓙縐嶆鏂規(guī)銆傜敱浜庡お寮鏄庯紝浠栬繕鑰冭檻涓涓牸瀛? 閮戒笉閫夋嫨鐨勭妞嶆柟妗堬紒璇峰府鍔╁啘澶害緲扮‘瀹氱妞嶆柟妗堟繪暟銆?br><br>杈撳叆鏍煎紡:<br>    絎竴琛岋細涓や釜鐢ㄧ┖鏍煎垎闅旂殑鏁存暟M鍜孨<br>    絎? 浜岃鍒扮M+1琛岋細絎琲+1琛屾弿榪扮墽鍦虹i琛屾瘡涓牸瀛愮殑鎯呭喌錛孨涓敤絀烘牸鍒嗛殧鐨勬暣鏁幫紝琛ㄧず榪欎釜鏍煎瓙鏄惁鍙互縐嶆錛?琛ㄧず鑲ユ矁鐨勩侀傚悎縐嶆錛?琛ㄧず璐槧鐨勩? 涓嶅彲縐嶆錛?br><br>杈撳嚭鏍煎紡<br>    涓涓暣鏁幫紝鍐滃か綰︾堪鍙夋嫨鐨勬柟妗堟繪暟闄や互 100,000,000 鐨勪綑鏁?br><br>鏍蜂緥杈撳叆<br>2 3<br>1 1 1<br>0 1 0<br><br>鏍蜂緥杈撳嚭<br>9<br><br>鏍蜂緥璇存槑<br><br>    緇欏彲浠ョ妞嶇帀綾崇殑鏍煎瓙緙? 鍙鳳細<br>      1 2 3<br>        4<br><br>    鍙? 縐嶄竴涓牸瀛愮殑鏂規(guī)鏈夊洓縐?1,2,3鎴?)錛岀妞嶄袱涓牸瀛愮殑鏂規(guī)鏈変笁縐?13,14鎴?4)錛岀妞嶄笁涓牸瀛愮殑鏂規(guī)鏈変竴縐?134)錛岃繕鏈変竴縐嶄粈涔堟牸瀛愰兘涓? 縐嶃?br>    4+3+1+1=9銆?br><br>鏁版嵁瑙勬ā<br>    瀵逛簬30%鐨勬暟鎹紝N,M<=4錛?br>    瀵逛簬 100%鐨勬暟鎹紝N,M<=12銆? <p> </p> </blockquote> <p><br><br>紼嬪簭浠g爜錛?br><code>program cowfood;<br><br>const<br>   d=100000000;<br>   MaxN=12;<br><br>var<br>   f:array[0..MaxN,1..2000]of longint;<br>   w:array[1..2000,1..2000]of boolean;<br>   st:array[0..2000]of integer;<br>   map:array[0..MaxN]of integer;<br>   m,n:integer;<br><br>function Impossible(a:integer):boolean;<br>var<br>   i:integer;<br>   flag:boolean=false;<br>begin<br>   for i:=1 to MaxN do<br>   begin<br>      if flag and (a and 1=1) then exit(true);<br>      flag:=(a and 1=1);<br>      a:=a shr 1;<br>   end;<br>   exit(false);<br>end;<br><br>function Conflict(a,b:integer):boolean;<br>var<br>   i:integer;<br>begin<br>   for i:=1 to MaxN do<br>   begin<br>      if (a and 1=1) and (b and 1=1) then exit(true);<br>      a:=a shr 1;<br>      b:=b shr 1;<br>   end;<br>   exit(false);<br>end;<br><br>function CanPlace(a,b:integer):boolean;<br>begin<br>   exit(a or b=b);<br>end;<br><br>procedure FindSt;<br>var<br>   i:integer;<br>begin<br>   for i:=0 to 1 shl MaxN-1 do<br>      if not Impossible(i) then<br>      begin<br>         inc(st[0]);<br>         st[st[0]]:=i;<br>      end;<br>end;<br><br>procedure Init;<br>var<br>   i,j:integer; <br>begin<br>   for i:=1 to st[0] do<br>   for j:=i to st[0] do<br>      if not Conflict(st[i],st[j]) then<br>      begin<br>         w[i,j]:=true;<br>         w[j,i]:=true;<br>      end;<br>end;<br><br>procedure Readp;<br>var<br>   i,j,t,v:integer;<br>begin<br>   readln(m,n);<br>   for i:=1 to m do<br>   begin<br>      v:=0;<br>      for j:=1 to n do<br>      begin<br>         read(t);<br>         v:=v*2+t;<br>      end;<br>      map[i]:=v;<br>      readln;<br>   end;<br>end;<br><br>procedure Solve;<br>var<br>   i,j,k:integer;<br>begin<br>   f[0,1]:=1;<br>   map[0]:=1 shl n-1;<br>   for i:=1 to m do<br>   for j:=1 to st[0] do<br>      if not CanPlace(st[j],map[i]) then f[i,j]:=-1 else<br>        for k:=1 to st[0] do if (f[i-1,k]<>-1) and w[j,k] then<br>           f[i,j]:=(f[i,j]+f[i-1,k]) mod d;<br>end;<br><br>procedure Writep;<br>var<br>   j:integer;<br>   ans:longint=0;<br>begin<br>   for j:=1 to st[0] do<br>      if f[m,j]<>-1 then ans:=(ans+f[m,j]) mod d;<br>   writeln(ans);<br>end;<br><br>begin<br>   assign(input,'cowfood.in');<br>   reset(input);<br>   assign(output,'cowfood.out');<br>   rewrite(output);<br><br>   FindSt;<br>   Init;<br>   Readp;<br>   Solve;<br>   Writep;<br><br>   close(input);<br>   close(output);<br>end.</code></p> <br> <img src ="http://www.shnenglu.com/yuqilin1228/aggbug/110616.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/yuqilin1228/" target="_blank">LynnRaymond</a> 2010-03-26 21:48 <a href="http://www.shnenglu.com/yuqilin1228/archive/2010/03/26/110616.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://www5909.com" target="_blank">一区二区三区在线高清</a>| <a href="http://xing69.com" target="_blank">一区二区三区四区精品</a>| <a href="http://bkf23.com" target="_blank">亚洲国产欧美国产综合一区</a>| <a href="http://26163c.com" target="_blank">狼人天天伊人久久</a>| <a href="http://jlkcjz.com" target="_blank">亚洲激情在线视频</a>| <a href="http://yw3329.com" target="_blank">亚洲一区二区视频在线</a>| <a href="http://v58q.com" target="_blank">国产精品久久久一区二区</a>| <a href="http://xvideoav99.com" target="_blank">亚洲欧美日本日韩</a>| <a href="http://77427xyz.com" target="_blank">另类欧美日韩国产在线</a>| <a href="http://xingba999.com" target="_blank">亚洲每日在线</a>| <a href="http://444al.com" target="_blank">国产精品美女黄网</a>| <a href="http://wwwen41.com" target="_blank">久久久久久久久岛国免费</a>| <a href="http://by66336.com" target="_blank">欧美激情中文字幕一区二区</a>| <a href="http://7redy.com" target="_blank">夜夜嗨av色综合久久久综合网</a>| <a href="http://373336.com" target="_blank">国产精品电影网站</a>| <a href="http://51shoudian.com" target="_blank">欧美一区二区视频在线观看2020</a>| <a href="http://313cq.com" target="_blank">你懂的国产精品</a>| <a href="http://ww245434.com" target="_blank">一区二区三区精品</a>| <a href="http://954k.com" target="_blank">国产一区二区三区高清在线观看</a>| <a href="http://xiyan88.com" target="_blank">久久久蜜桃一区二区人</a>| <a href="http://292q.com" target="_blank">日韩视频永久免费</a>| <a href="http://caopormo.com" target="_blank">久久久噜噜噜</a>| <a href="http://xvideoav99.com" target="_blank">一本一本久久a久久精品综合妖精</a>| <a href="http://2938476.com" target="_blank">国产精品高清在线</a>| <a href="http://zgztby.com" target="_blank">理论片一区二区在线</a>| <a href="http://uu6623.com" target="_blank">宅男噜噜噜66一区二区</a>| <a href="http://cctbdy.com" target="_blank">猫咪成人在线观看</a>| <a href="http://9238479.com" target="_blank">亚洲午夜伦理</a>| <a href="http://kk66mm.com" target="_blank">亚洲级视频在线观看免费1级</a>| <a href="http://b871.com" target="_blank">国产精品乱码一区二三区小蝌蚪</a>| <a href="http://yc0989.com" target="_blank">久久精品国产久精国产爱</a>| <a href="http://7777977.com" target="_blank">亚洲精品国精品久久99热一</a>| <a href="http://012492.com" target="_blank">久久国产精彩视频</a>| <a href="http://yjdm296.com" target="_blank">9l视频自拍蝌蚪9l视频成人</a>| <a href="http://senlin86.com" target="_blank">国产亚洲精品久久久</a>| <a href="http://hkjccc.com" target="_blank">欧美韩国日本一区</a>| <a href="http://k91cm.com" target="_blank">久久成人免费</a>| <a href="http://497n.com" target="_blank">亚洲社区在线观看</a>| <a href="http://xxxx48.com" target="_blank">亚洲高清不卡在线</a>| <a href="http://caopormo.com" target="_blank">久久不射2019中文字幕</a>| <a href="http://wallypanel.com" target="_blank">99成人在线</a>| <a href="http://9a9u.com" target="_blank">在线播放亚洲一区</a>| <a href="http://2111952.com" target="_blank">亚洲国产精品久久精品怡红院</a>| <a href="http://794579.com" target="_blank">欧美一级播放</a>| <a href="http://showrti.com" target="_blank">中文精品视频</a>| <a href="http://cp50088.com" target="_blank">亚洲国产成人久久综合</a>| <a href="http://77017w.com" target="_blank">国产精品永久入口久久久</a>| <a href="http://wltaste.com" target="_blank">欧美韩日亚洲</a>| <a href="http://smiczbb.com" target="_blank">乱码第一页成人</a>| <a href="http://hnluvlux.com" target="_blank">先锋影音久久</a>| <a href="http://0808333.com" target="_blank">亚洲一区久久</a>| <a href="http://zisxks.com" target="_blank">亚洲无线视频</a>| <a href="http://707377c.com" target="_blank">99在线精品观看</a>| <a href="http://o6186.com" target="_blank">亚洲精品女av网站</a>| <a href="http://645955.com" target="_blank">另类国产ts人妖高潮视频</a>| <a href="http://888nei.com" target="_blank">性欧美超级视频</a>| <a href="http://713b.com" target="_blank">亚洲永久免费视频</a>| <a href="http://dayomall.com" target="_blank">9久re热视频在线精品</a>| <a href="http://www-ss777.com" target="_blank">亚洲国语精品自产拍在线观看</a>| <a href="http://01xxtv.com" target="_blank">国产亚洲激情视频在线</a>| <a href="http://www-18873.com" target="_blank">国产精品毛片va一区二区三区 </a>| <a href="http://wwwok1965.com" target="_blank">亚洲精品女av网站</a>| <a href="http://6aaee.com" target="_blank">久久亚洲高清</a>| <a href="http://6666785.com" target="_blank">久久精品夜色噜噜亚洲a∨</a>| <a href="http://868482.com" target="_blank">午夜精品久久久99热福利</a>| <a href="http://199372.com" target="_blank">亚洲天堂av电影</a>| <a href="http://yyyy456.com" target="_blank">日韩视频免费在线观看</a>| <a href="http://tfccrk.com" target="_blank">亚洲欧洲日韩综合二区</a>| <a href="http://nagebbs.com" target="_blank">亚洲国产欧美在线</a>| <a href="http://51-express.com" target="_blank">亚洲大胆人体在线</a>| <a href="http://www77577.com" target="_blank">亚洲第一页自拍</a>| <a href="http://bjjxgcsxy.com" target="_blank">亚洲第一成人在线</a>| <a href="http://wwwmm7777.com" target="_blank">亚洲高清免费</a>| <a href="http://mysuteng.com" target="_blank">亚洲国产精品久久久久秋霞不卡</a>| <a href="http://ynjzwh.com" target="_blank">激情久久影院</a>| <a href="http://wanyoulipin.com" target="_blank">1024亚洲</a>| <a href="http://jm1688e.com" target="_blank">亚洲欧洲在线一区</a>| <a href="http://chaxiangmall.com" target="_blank">亚洲美女尤物影院</a>| <a href="http://bx989.com" target="_blank">亚洲图片欧美午夜</a>| <a href="http://huokemima.com" target="_blank">亚洲午夜精品在线</a>| <a href="http://actskynet.com" target="_blank">午夜精品视频在线观看</a>| <a href="http://xsjgxx.com" target="_blank">午夜视频在线观看一区二区三区</a>| <a href="http://8558585.com" target="_blank">欧美一区二区三区电影在线观看</a>| <a href="http://520taose.com" target="_blank">先锋影音网一区二区</a>| <a href="http://zgztby.com" target="_blank">欧美伊人精品成人久久综合97</a>| <a href="http://anxingou365.com" target="_blank">欧美一区激情</a>| <a href="http://hnjlhgw.com" target="_blank">久久嫩草精品久久久久</a>| <a href="http://65kf.com" target="_blank">欧美h视频在线</a>| <a href="http://www888x.com" target="_blank">亚洲欧洲日夜超级视频</a>| <a href="http://bjzgmember.com" target="_blank">亚洲乱码精品一二三四区日韩在线 </a>| <a href="http://avicpharm.com" target="_blank">久久激情五月婷婷</a>| <a href="http://www-137999.com" target="_blank">久久久综合免费视频</a>| <a href="http://www218999.com" target="_blank">蜜臀av国产精品久久久久</a>| <a href="http://joy-learn.com" target="_blank">欧美激情第10页</a>| <a href="http://by2565.com" target="_blank">国产精品毛片在线看</a>| <a href="http://xhamster0.com" target="_blank">国产欧美一区二区三区沐欲</a>| <a href="http://ww323.com" target="_blank">国语自产精品视频在线看8查询8</a>| <a href="http://wwwyinyinai149.com" target="_blank">国产一区二区视频在线观看</a>| <a href="http://110488.com" target="_blank">伊人久久大香线蕉av超碰演员</a>| <a href="http://aqdit2022.com" target="_blank">亚洲福利电影</a>| <a href="http://www433444.com" target="_blank">欧美fxxxxxx另类</a>| <a href="http://nebnb89.com" target="_blank">欧美日韩精品中文字幕</a>| <a href="http://360695.com" target="_blank">国产伦精品一区二区三</a>| <a href="http://3s3v.com" target="_blank">在线观看91精品国产麻豆</a>| <a href="http://lucky5888.com" target="_blank">亚洲人成人一区二区在线观看</a>| <a href="http://www-888690.com" target="_blank">亚洲视频在线观看</a>| <a href="http://pgpg520.com" target="_blank">久久国产精品毛片</a>| <a href="http://2061826.com" target="_blank">亚洲高清色综合</a>| <a href="http://sexx777.com" target="_blank">亚洲香蕉网站</a>| <a href="http://012488.com" target="_blank">久久这里有精品15一区二区三区</a>| <a href="http://666777v3.com" target="_blank">欧美日韩成人在线视频</a>| <a href="http://fuqiba.com" target="_blank">国产午夜精品麻豆</a>| <a href="http://744734.com" target="_blank">日韩午夜在线播放</a>| <a href="http://o10669.com" target="_blank">欧美一区二区</a>| <a href="http://zzzz91.com" target="_blank">亚洲国产第一</a>| <a href="http://jiujiire.com" target="_blank">香蕉av777xxx色综合一区</a>| <a href="http://baixinlocal.com" target="_blank">老司机精品久久</a>| <a href="http://www-440450.com" target="_blank">国产精品久久久久天堂</a>| <a href="http://baidubf.com" target="_blank">亚洲第一综合天堂另类专</a>| <a href="http://lutube666.com" target="_blank">亚洲香蕉在线观看</a>| <a href="http://dusenborg.com" target="_blank">麻豆精品精品国产自在97香蕉</a>| <a href="http://qibilly.com" target="_blank">99精品热视频只有精品10</a>| <a href="http://339871.com" target="_blank">久久国产精品一区二区</a>| <a href="http://tfccrk.com" target="_blank">欧美日韩视频第一区</a>| <a href="http://heyzo1199.com" target="_blank">玉米视频成人免费看</a>| <a href="http://036762.com" target="_blank">亚洲欧美日韩一区二区三区在线观看</a>| <a href="http://862323.com" target="_blank">模特精品在线</a>| <a href="http://jilcool.com" target="_blank">亚洲综合大片69999</a>| <a href="http://thisisfil.com" target="_blank">欧美精品一区二区久久婷婷</a>| <a href="http://ourskycity.com" target="_blank">国产亚洲福利一区</a>| <a href="http://qqcf9900.com" target="_blank">亚洲一区在线播放</a>| <a href="http://1000kongbao.com" target="_blank">亚洲大胆视频</a>| <a href="http://44368com.com" target="_blank">久久精品国产亚洲精品</a>| <a href="http://pao449.com" target="_blank">国产精品区一区二区三区</a>| <a href="http://22400com.com" target="_blank">亚洲精品欧美极品</a>| <a href="http://41818c.com" target="_blank">美女国内精品自产拍在线播放</a>| <a href="http://8013sf.com" target="_blank">亚洲图片欧洲图片av</a>| <a href="http://033530.com" target="_blank">欧美激情一二区</a>| <a href="http://yjsp8888.com" target="_blank">一色屋精品视频在线观看网站</a>| <a href="http://www77vcd.com" target="_blank">欧美一区二区精品在线</a>| <a href="http://8eeeccc.com" target="_blank">亚洲精品一区中文</a>| <a href="http://521mu.com" target="_blank">女女同性精品视频</a>| <a href="http://zd-jm.com" target="_blank">精品成人久久</a>| <a href="http://maomi998.com" target="_blank">久久久久久久高潮</a>| <a href="http://lymzdd.com" target="_blank">亚洲欧美日本国产有色</a>| <a href="http://nebnb89.com" target="_blank">欧美日韩精品久久</a>| <a href="http://6k7a.com" target="_blank">亚洲精品国产品国语在线app</a>| <a href="http://5cok.com" target="_blank">看欧美日韩国产</a>| <a href="http://www-369111.com" target="_blank">香蕉免费一区二区三区在线观看</a>| <a href="http://miaoxp.com" target="_blank">欧美婷婷六月丁香综合色</a>| <a href="http://miandoctor.com" target="_blank">亚洲精品欧美精品</a>| <a href="http://wtoykd.com" target="_blank">亚洲国产成人精品视频</a>| <a href="http://22241com.com" target="_blank">久久精品国产亚洲精品 </a>| <a href="http://8x588.com" target="_blank">黑人极品videos精品欧美裸</a>| <a href="http://5b6c.com" target="_blank">香蕉成人啪国产精品视频综合网</a>| <a href="http://6868681.com" target="_blank">亚洲伦理自拍</a>| <a href="http://567acg.com" target="_blank">欧美母乳在线</a>| <a href="http://bgflee.com" target="_blank">99热这里只有精品8</a>| <a href="http://hs045.com" target="_blank">亚洲国产女人aaa毛片在线</a>| <a href="http://jldianda.com" target="_blank">久久综合九色综合欧美就去吻</a>| <a href="http://pao449.com" target="_blank">国产主播一区二区三区四区</a>| <a href="http://444al.com" target="_blank">久久久99久久精品女同性</a>| <a href="http://ywbst8g4tukcsqhioikc.com" target="_blank">亚洲女女做受ⅹxx高潮</a>| <a href="http://012928.com" target="_blank">国产精品网站在线播放</a>| <a href="http://520844www.com" target="_blank">亚洲欧美一区二区原创</a>| <a href="http://bnb-gndc.com" target="_blank">亚洲无亚洲人成网站77777</a>| <a href="http://278538.com" target="_blank">国产精品草莓在线免费观看</a>| <a href="http://k8m9.com" target="_blank">亚洲夜晚福利在线观看</a>| <a href="http://aabbcc11.com" target="_blank">99精品国产一区二区青青牛奶</a>| <a href="http://41818c.com" target="_blank">欧美日本一区二区三区</a>| <a href="http://448968.com" target="_blank">亚洲一品av免费观看</a>| <a href="http://wwwyinyinai149.com" target="_blank">中日韩美女免费视频网址在线观看 </a>| <a href="http://52wenxiu.com" target="_blank">香蕉国产精品偷在线观看不卡</a>| <a href="http://goldteddy.com" target="_blank">国产精品chinese</a>| <a href="http://3b6f.com" target="_blank">亚洲欧美综合国产精品一区</a>| <a href="http://pnxingmei.com" target="_blank">亚洲一区二区三区精品在线</a>| <a href="http://lctongda.com" target="_blank">国产精品视频</a>| <a href="http://wwwby2232.com" target="_blank">久久九九久久九九</a>| <a href="http://by3799.com" target="_blank">久久人人97超碰国产公开结果 </a>| <a href="http://788997.com" target="_blank">亚洲欧美日韩电影</a>| <a href="http://wwzz3.com" target="_blank">亚洲免费网址</a>| <a href="http://4106446.com" target="_blank">国产视频综合在线</a>| <a href="http://actinview.com" target="_blank">蜜桃av噜噜一区二区三区</a>| <a href="http://zgztby.com" target="_blank">蜜月aⅴ免费一区二区三区 </a>| <a href="http://556626.com" target="_blank">亚洲国产精品尤物yw在线观看</a>| <a href="http://9e67.com" target="_blank">欧美精品在线观看</a>| <a href="http://70909g.com" target="_blank">亚洲视频久久</a>| <a href="http://75pppp.com" target="_blank">欧美一区二区三区成人</a>| <a href="http://wwww20.com" target="_blank">樱桃国产成人精品视频</a>| <a href="http://cqrehoo.com" target="_blank">欧美激情1区2区3区</a>| <a href="http://laoyewo.com" target="_blank">欧美日韩国产首页</a>| <a href="http://4379d.com" target="_blank">欧美一级久久</a>| <a href="http://1zz8903.com" target="_blank">久久综合网色—综合色88</a>| <a href="http://hazymall.com" target="_blank">一区二区三区国产在线</a>| <a href="http://725443.com" target="_blank">亚洲欧美精品伊人久久</a>| <a href="http://4986888.com" target="_blank">亚洲第一主播视频</a>| <a href="http://ehagakii.com" target="_blank">一区二区三区导航</a>| <a href="http://688528.com" target="_blank">国自产拍偷拍福利精品免费一</a>| <a href="http://yahuake.com" target="_blank">欧美激情第三页</a>| <a href="http://yyds16.com" target="_blank">国产精品视频免费一区</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>