锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲AV综合永久无码精品天堂,亚洲精品国产品国语在线,亚洲国产精品成人久久http://www.tkk7.com/neverend/category/46475.html涓嶈褰曪紝緇堝皢琚仐蹇樸? 涓涓囧勾澶箙錛屽彧浜夋湞澶曘? 浠栦滑鐢ㄦ暟瀛楁瀯寤轟簡鏁翠釜涓栫晫銆?/description>zh-cnThu, 11 Oct 2012 13:37:50 GMTThu, 11 Oct 2012 13:37:50 GMT60Windows涓婳penLDAP鐨勫畨瑁呬笌閰嶇疆http://www.tkk7.com/neverend/archive/2010/10/08/334014.htmlneverendneverendFri, 08 Oct 2010 15:05:00 GMThttp://www.tkk7.com/neverend/archive/2010/10/08/334014.htmlhttp://www.tkk7.com/neverend/comments/334014.htmlhttp://www.tkk7.com/neverend/archive/2010/10/08/334014.html#Feedback2http://www.tkk7.com/neverend/comments/commentRss/334014.htmlhttp://www.tkk7.com/neverend/services/trackbacks/334014.html 鍜岀綉涓婃祦浼犵殑鏁欑▼錛?a >http://www.lifv.cn/?p=462

OpenLDAP涓嬭澆鍦板潃錛?a >http://download.bergmans.us/openldap/openldap-2.2.29/openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exe 涓嬭澆鍚庣偣鍑誨畨瑁呭嵆鍙?br />
閰嶇疆sldap.conf 錛氬湪瀹夎鐩綍涓嬫壘鍒皊ldap.conf 錛屼慨鏀歸厤緗涓嬶細
suffix "dc=example,dc=com" 
rootdn 
"cn=Manager,dc=example,dc=com" 
rootpw secret 

鍚姩OpenLDAP錛氳繘鍏md鍛戒護琛岋紝璺寵漿鍒癘penLDAP瀹夎鐩綍涓嬶紝榪愯錛?br />
slapd -1
鐢ㄥ彲浠ョ湅鍒版帶鍒跺彴涓嬫墦鍗頒竴鐗囦俊鎭紝openldap 榛樿鏄敤鐨?Berkeley DB 鏁版嵁搴撳瓨鍌ㄧ洰褰曟暟鎹殑銆?br />
鍐嶅紑涓涓猚md錛岃煩杞埌OpenLDAP瀹夎鐩綍涓嬨?br />
嫻嬭瘯OpenLDAP鏄惁姝e父鍚姩錛?br />
ldapsearch --s base (objectclass=*) namingContexts
瀹樻柟鏂囨。閲岋紝榪欎竴鏉″懡浠ゅ姞浜嗕簺鍗曞紩鍙鳳紝浣嗗甫鍗曞紩鍙風殑鍛戒護鍦╓indows鐜涓嬭窇涓嶉氥傚悗闈㈢殑鍛戒護涔熼兘閬垮厤
浣跨敤寮曞彿銆?br /> 濡傛灉榪斿洖錛?br />
dn: 
namingContexts: dc
=example,dc=com
鍒欒鏄嶰penLDAP鎴愬姛鍚姩

澧炲姞涓涓潯鐩細
1.鍋氫竴涓狶DIF鏂囦歡
2.浣跨敤ldapadd鍛戒護

1.鍦ㄥ畨瑁呯洰褰曚笅錛屾柊寤烘枃浠秂xample.ldif錛岃緭鍏ュ涓嬪唴瀹癸細
dn: dc=example,dc=com 
objectclass: dcObject 
objectclass: organization 
o: Example Company 
dc: example 

dn: cn
=Manager,dc=example,dc=com 
objectclass: organizationalRole 
cn: Manager
娉ㄦ剰錛氬湪鏂囨。姣忎竴琛岀殑寮澶村拰緇撳熬涓嶈鏈夌┖鏍鹼紝鏂囨。鏈鍚庢渶濂戒篃鍒洖杞︺傚緩璁笉瑕佹嫹璐濓紝鐢ㄦ墜鏁茶繖鍑犺銆?br />
2.cmd鍦ㄥ畨瑁呯洰褰曚笅錛岃繍琛岋細
ldapadd --D cn=Manager,dc=example,dc=com --f example.ldif

鍙兘浼氳姹傝緭鍏ュ瘑鐮侊細secret 錛堥厤緗枃浠墮噷鍐欑殑榪欎釜瀵嗙爜錛?/p> 娣誨姞鏉$洰鎴愬姛鍚庯紝浼氭湁鎻愮ず錛?adding new entry cn=Manager,dc=example,dc=com

綆鍗曟煡璇細

ldapsearch --b dc=example,dc=com (objectclass=*)

鏌ヨ鎴愬姛鍚庯紝浼氳繑鍥炲垰鎵嶆彃鍏ョ殑鏉$洰銆?br />
JNDI榪炴帴OpenLDAP
Java鐨凧NDI鎺ュ彛寰堝己澶э紝鍙互榪炴帴LDAP鏈嶅姟銆?br />
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext; 
public class TestOpenLDAP {

    
/**
     * 
@param args
     
*/
    
public static void main(String[] args) {
        
// TODO Auto-generated method stub
        TestOpenLDAP LDAPTest1 = new TestOpenLDAP();
        String root 
= "dc=example,dc=com"//root
        Hashtable env = new Hashtable();
        env.put(Context.INITIAL_CONTEXT_FACTORY, 
"com.sun.jndi.ldap.LdapCtxFactory" );
        env.put(Context.PROVIDER_URL, 
"ldap://localhost/" + root);
        env.put(Context.SECURITY_AUTHENTICATION, 
"simple" );
        env.put(Context.SECURITY_PRINCIPAL, 
"cn=Manager,dc=example,dc=com" );
        env.put(Context.SECURITY_CREDENTIALS, 
"secret" );
        DirContext ctx 
= null ;
        
try {
        ctx 
= new InitialDirContext(env);
        System.out.println( 
"璁よ瘉鎴愬姛" );
        }
        
catch (javax.naming.AuthenticationException e) {
        e.printStackTrace();
        System.out.println( 
"璁よ瘉澶辮觸" );
        }
        
catch (Exception e) {
        System.out.println( 
"璁よ瘉鍑洪敊錛?/span>" );
        e.printStackTrace();
        }
if (ctx != null ) {
        
try {
        ctx.close();
        }
        
catch (NamingException e) {
        
//ignore
        }
        }

    }

}

闂錛?br /> 1. 鍥懼艦鍖栫晫闈DAPBrowser鐨勯厤緗?br /> 涓嬭澆鍦板潃錛?nbsp;http://files.blogjava.net/Unmi/LdapBrowser282.rar
瑙e帇鍚庤繘鍏dapBrowser282鐩綍錛屾墦寮閰嶇疆鏂囦歡OpenLdap_Localhost.cfg
淇敼閰嶇疆錛?br />
basedn=dc=example,dc=com
managerdn
=cn=Manager,dc=example,dc=com
榪愯lbe.bat榪涘叆鍥懼艦鐣岄潰鍚庨夋嫨榪炴帴OpenLdap_Localhost鍗沖彲銆?br />
2. OpenLDAP鐨勮娉曪紝鍐呯疆ObjectClass

LDAP瀛︿範

entry(record,directory object)  鏉$洰 涓鏉℃暟鎹?鐩稿綋浜庢暟鎹〃鐨勪竴鏉¤褰?/p>

entry鐢辮嫢騫蹭釜attribute緇勬垚錛宱bjectclass鏄繀欏葷殑attribute錛岀敤浜庢弿榪癳ntry鐨剆chema

attribute鏄痭ame/value瀵瑰艦寮忥紝渚嬪cn = liuxuanyu cn = mengke 涓涓猲ame 鍙互瀵瑰簲澶氫釜鍊?/p>

container鏄竴縐嶇壒孌婄殑entry,涓烘暟鎹殑緇勭粐鍜岀鐞嗘彁渚涗竴涓戶鎵夸綋緋葷粨鏋?渚嬪ou
浠諱綍entry閮藉彲浠ュ湪鐗瑰畾鐨勬儏鍐典笅鍙樻垚container

涓庡叧緋繪暟鎹簱鐨勬瘮杈冿細
LDAP璇繪搷浣滄ц兘楂?鍐欐搷浣滄ц兘涓嶅DB,DB 璇誨啓鍧囧彲錛岃鎿嶄綔鎬ц兘涓嶅LDAP
鏁版嵁緇撴瀯涓嶅悓
LDAP閫傚悎浜庡瓨鍌ㄧ戶鎵跨粨鏋勭殑鏁版嵁


namespace
DN (distinguish name) DN鏄痚ntry鐨勫悕瀛楋紝entry鐨勫敮涓鏍囪瘑
RDN (relative distinguish name) entry鍦ㄦ煇涓鍣ㄨ寖鍥村唴鐨勬爣璇?br /> CN (common name) 甯哥敤鍚嶇О 涔犳儻涓婅鐢ㄤ綔RDN
DC (domain component) 鍩熷悕

LDAP鍙厑璁告爲褰㈢粨鏋?/p>

object identifier (OID) 渚嬪錛?.5.4.3 瀹冩槸灞炴х被鍨嬬殑鏍囪瘑絎?/p>

schema
object class 瀹氫箟浜唀ntry鐨勭被鍨?br /> 鏈変笁縐嶇被鍨嬬殑object Class: 鎶借薄綾匯佽緟鍔╃被鍜岀粨鏋勫寲綾匯?/p>

鏋勯爏chema鐨勬柟寮?錛?br /> 1. 緇勫悎鐜版湁鐨刼bject class
2. 鎵╁睍鐜版湁鐨刼bject class 緇ф壙 浣跨敤杈呭姪綾伙紙瀹為檯涓婃槸涓縐嶈仛鍚堝叧緋伙級

The subschema publishes the schema to clients

inetOrgPerson is a contemporary definition for a person entry RFC 2798


3. JLDAP涓嶫NDI鐨勬瘮杈?br />  JLDAP鏄敱novel寮鍙戠殑錛屽師鏄拡瀵筃ovel鐨凬DS鐩綍璁捐鐨凧AVA璁塊棶宸ュ叿銆侼OVEL鐨凬DS鍜岀綉鏅紙NETSCAPE錛夌殑鐩綍鏄伐鍏風晫鏈鏃╃殑鐩綍浜у搧銆侸LDAP騫墮潪JNDI鐨勬湇鍔′緵搴旇咃紝鑰屾槸鍚屼竴鎶借薄灞傛涓嬬殑璁塊棶宸ュ叿闆嗐備笌JNDI-LDAP鐩告瘮錛孞LDAP鏇存帴榪戜簬綾誨叧緋繪暟鎹簱鐨勮闂柟寮忋?

   NDS鏄伒瀹圠DAP鍗忚鐨勫茍榪涜浜嗘墿灞曠殑綾籑AD浜у搧銆傝孨OVEL涔熷凡鎶奐LDAP鎹愮尞緇欎簡OPENLDAP寮婧愰」鐩紝鍙互涓栫晫鑼冨洿鍐呰嚜鐢變嬌鐢ㄣ備笌 JNDI鐩告瘮錛孞LDAP鏃犻』緇ф壙DirContext鎵嶈兘瀹炵幇娣誨姞錛屼篃鏃犻渶棰勫厛鐢熸垚娣誨姞鐨勭被錛屽彲浠ヨ薄鏅氭暟鎹闂偅鏍鳳紝鐢熸垚榪炴帴錛岀劧鍚庝嬌鐢?:add鏂規硶娣誨姞銆傝繖鏍鳳紝娣誨姞鐨勭伒媧繪ц寮轟簬JNDI銆?br />
浣嗙敱浜嶫LDAP鐩墠鏄闂甆DS錛屽洜姝わ紝瀹冧笉鍏峰JNDI瀹屽叏闈㈠悜瀵硅薄瀛樺偍鐨勮兘鍔涳紝瀵逛簬楂樼駭鐨凩DAP搴旂敤錛孞LDAP涓嶆槸鍚堥傜殑閫夋嫨銆?/p>
4. OpenLDAP鐨勬繁鍏ョ鐞?


neverend 2010-10-08 23:05 鍙戣〃璇勮
]]>
銆婄紪紼嬩箣緹庛嬮槄璇葷瑪璁?/title><link>http://www.tkk7.com/neverend/archive/2010/09/29/333339.html</link><dc:creator>neverend</dc:creator><author>neverend</author><pubDate>Wed, 29 Sep 2010 03:10:00 GMT</pubDate><guid>http://www.tkk7.com/neverend/archive/2010/09/29/333339.html</guid><wfw:comment>http://www.tkk7.com/neverend/comments/333339.html</wfw:comment><comments>http://www.tkk7.com/neverend/archive/2010/09/29/333339.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/neverend/comments/commentRss/333339.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/neverend/services/trackbacks/333339.html</trackback:ping><description><![CDATA[<p><br /> <span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.1姹?浣嶄簩榪涘埗鏁頒腑1鐨勪釜鏁?br /> 瑙f硶1錛氱洿瑙傛硶錛屾瘡嬈¢櫎浠?錛岃綆椾綑鏁頒負1鐨勪釜鏁?O(log2v) <br /> 瑙f硶2錛氱畝鍗曚綅鎿嶄綔錛屾瘡嬈′笌0x01鍋氫笌榪愮畻錛屽啀鍙崇Щ涓浣嶃侽(log2v)<br /> 瑙f硶3錛氫嬌鐢ㄤ綅鎿嶄綔v & (v-1) , 姣忔鍙噺灝戜簩榪涘埗鏁板瓧涓殑涓涓?銆傦紙鑻 & (v-1) == 0, 鍒檝涓?鐨勬柟騫傦級 <br /> 瑙f硶4錛氱┖闂存崲鏃墮棿錛屽埄鐢ㄩ鐩腑瀛楅暱8浣嶇殑鐮寸喚錛屽緩绔嬩竴涓┓涓炬暟緇勩侽(1)</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">鐭ヨ瘑鐐癸細浣嶈繍綆楃殑鎬ц川<br /> 闄勶細鏁扮粍鏈?n+1涓暟錛屽叾涓璶涓暟鎴愬鍑虹幇錛屾壘鍑洪潪鎴愬鍑虹幇鐨勯偅涓暟銆?br /> 鏁扮粍鎵鏈夊厓绱犲仛寮傛垨鎿嶄綔銆?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.2 <br /> 1.N!鐨勬湯灝炬湁澶氬皯涓浂<br /> 2.N!浜岃繘鍒惰〃紺轟腑鏈浣庝綅1鐨勪綅緗?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">1.瑙f硶錛氳川鍥犳暟鍒嗚В鍙煡錛?鍙湁2*5鍙緱錛屾墍浠?鐨勪釜鏁板氨鏄川鍥犳暟鍒嗚В涓?鐨勪釜鏁頒笌5鐨勪釜鏁扮殑鏈灝忓鹼紝瀹為檯涓婂氨鏄?br /> 姹?鐨勪釜鏁癦銆?br /> Z= [N/5] +銆[N/5^2] +錛籒/5^3錛? …… <br /> [N/5]琛ㄧず涓嶅ぇ浜嶯鐨勬暟涓?鐨勫嶆暟璐$尞涓涓? <br /> [N/5^2]琛ㄧず涓嶅ぇ浜嶯鐨勬暟涓?^2鍐嶈礎鐚竴涓?/銆?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.瑙f硶錛氬洜涓鴻川鍥犳暟鍒嗚В涓彧鏈?鏄伓鏁幫紝鎵浠 = [N/2] + [N/2^2] + [N/2^3] + …… +</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.3瀵繪壘澶氭暟鍏冪礌闂<br /> 瑙f硶錛氬噺娌伙細姣忔鍒犻櫎涓や釜涓嶅悓鐨処D,姘寸帇ID鍑虹幇鐨勬鏁頒粛鏃т細瓚呰繃鎬繪暟鐨勪竴鍗娿?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.4浠?鍒癗鐨勬墍鏈夋暟涓?#8220;1”鍑虹幇鐨勪釜鏁?br /> 瑙f硶錛氬鎵?鍑虹幇鐨勮寰嬶紝姣旇緝澶嶆潅銆?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.5瀵繪壘N涓暣鏁頒腑鏈澶х殑K涓暟<br /> 瑙f硶1錛氶夋嫨鎺掑簭錛岄夊嚭鏈澶х殑K涓暟銆?O(n*k)<br />  涓鐐規敼榪涳細閮ㄥ垎鍫嗘帓搴忥紝鍏堝緩鍫嗭紝鍐嶆帓鍑烘渶澶х殑k涓暟鍗沖彲銆侽(n)+O(logn*k)<br /> 瑙f硶2錛氬垎娌伙紝鍒╃敤蹇熸帓搴忕殑鍒掑垎鎬濊礬銆侽(n*log2k)<br /> 瑙f硶3錛氫簩鍒嗘悳绱紙涓庛婄紪紼嬬彔鐜戙嬬浜岀珷闂A鎬濊礬綾諱技錛夛紝鏈変袱縐嶅垝鍒嗘柟寮忥細<br /> 1.璁懼凡鐭涓暟涓渶灝忓糣min錛屾渶澶у糣max錛屽鍖洪棿[Vmin, Vmax]鍋氫簩鍒嗗嵆鍙?br /> 2.璁綨涓暣鏁版槸M浣嶉暱鐨勩備粠鏈楂樹綅寮濮嬶紝鎸塨i浣?銆?浜屽垎銆?br /> 姝よВ娉曢傜敤浜庡ぇ鏁版嵁閲忕殑澶勭悊錛屼笉榪囪澶氭璇誨啓鑻ュ共涓復鏃舵枃浠躲?br /> 瑙f硶4錛氬緩涓涓渶灝忓爢瀛樺偍K涓暟錛屽爢欏朵負鍫嗕腑鏈灝忓箋?br /> 瀵圭k鍒癗涓暟錛岃嫢A[i]澶т簬鍫嗛《H[0]錛屼護H[0]=A[i]錛屽啀璋冪敤shift-down榪囩▼璋冩暣鍫嗐?br /> 姝よВ娉曢潪甯擱傚悎浜嶯鍊煎緢澶х殑鎯呭喌錛屽鏉傚害涓篛(n * log2k)<br /> 瑙f硶5錛氱┖闂存崲鏃墮棿錛岀敤count[Vmax]璁$畻姣忎釜鏁板瓧鍑虹幇鐨勬鏁般?br /> 濡傛灉Vmax寰堝ぇ錛屽皢[0, Vmax]鍒嗘垚m涓皬鍧楋紝鍐嶅垎鍒璁哄嵆鍙?</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.7鏈澶у叕綰︽暟闂<br />  鐢ㄤ綅榪愮畻姹傝В<br />    浣嶈繍綆楅棶棰橈細 <br />    1.姹備竴涓暣鏁扮殑浜岃繘鍒惰〃紺轟腑1鐨勪釜鏁?br />    2.閫嗚漿涓涓暣鏁扮殑浜岃繘鍒惰〃紺洪棶棰?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.9鏂愭嘗閭e鏁板垪<br /> ·閫掑綊 鏁堢巼鏈浣?br /> ·榪唬 O(n)<br /> ·鐭╅樀鍒嗘不娉?</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.14瀛愭暟緇勪箣鍜岀殑鏈澶у?<br /> 鍒嗘不 <br /> 鍔ㄦ佽鍒?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">2.15瀛愮煩闃典箣鍜岀殑鏈澶у?br /> 鍥哄畾涓緇達紝鍙︿竴緇磋漿鍖栦負瀛愭暟緇勪箣鍜岀殑鏈澶у奸棶棰?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt"> </span></span></span></p> <p>2.16姹傛暟緇勪腑鏈闀塊掑瀛楃鍒楃殑闀垮害</p> <p>瑙f硶1錛氬姩鎬佽鍒?/p> <p>鍋囪array[]鐨勫墠i涓厓绱犱腑錛屾渶闀塊掑瀛愬簭鍒楃殑闀垮害涓篖IS[i]錛?/p> <p>鍒欙紝LIS[i + 錛慮 = max{1, LIS[k]+1}, array[i+1] > array[k], for any k<=i</p> <p> </p> <div style="background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000FF; ">int</span><span style="color: #000000; "> LIS(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[] array) {<br /> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[] LIS </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">[array.length];<br /> </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> i </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; "> ; i </span><span style="color: #000000; "><</span><span style="color: #000000; "> array.length; i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {<br />     LIS[i] </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />     </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> j </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">; j</span><span style="color: #000000; "><</span><span style="color: #000000; ">i; j</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {<br />         </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (array[i] </span><span style="color: #000000; ">></span><span style="color: #000000; "> array[j] </span><span style="color: #000000; ">&&</span><span style="color: #000000; "> LIS[j] </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; "> </span><span style="color: #000000; ">></span><span style="color: #000000; ">LIS[i])<br />             LIS[i] </span><span style="color: #000000; ">=</span><span style="color: #000000; "> LIS[j] </span><span style="color: #000000; ">+</span><span style="color: #000000; ">銆</span><span style="color: #000000; ">錛?/span><span style="color: #000000; ">;銆<br />     }<br /> } <br /> }<br /> </span></div> <p> </p> <p>O(N^2)鐨勬椂闂村鏉傚害</p> <p>瑙f硶2錛?/p> <p>MLIS[i]瀹氫箟涓哄墠i涓厓绱犱腑錛屼互array[i]涓烘渶澶у厓绱犵殑鏈闀塊掑瀛愬簭鍒楃殑闀垮害銆?/p> <p>鍙互璇佹槑錛孧LIS[i]鐨勬渶澶у間篃鏄渶緇堢殑緇撴灉銆?/p> <p>MaxV[i]淇濆瓨闀垮害涓篿鐨勯掑瀛愬簭鍒楁渶澶у厓绱犵殑鏈灝忓箋?/p> <p>瑙f硶2鐨勭▼搴忔洿鏂癕axV鐨勯儴鍒嗗簲璇ユ槸鏈夐棶棰樼殑錛岀敱姝ゅ鑷存椂闂村鏉傚害鐨勫垎鏋愰敊璇紝騫朵笖瑙f硶3涔熸槸閿欒鐨勩?/p> <p><br /> </p> <p>2.17鏁扮粍寰幆縐諱綅</p> <p> </p> <div style="background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000FF; ">void</span><span style="color: #000000; "> rightshift(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">arr, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> N, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> k) {<br />     K </span><span style="color: #000000; ">%=</span><span style="color: #000000; "> N;<br />     Reverse(arr, </span><span style="color: #000000; ">0</span><span style="color: #000000; ">, N</span><span style="color: #000000; ">-</span><span style="color: #000000; ">k</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">);<br />     Reverse(arr, N</span><span style="color: #000000; ">-</span><span style="color: #000000; ">k, N</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">);<br />     Reverse(arr, </span><span style="color: #000000; ">0</span><span style="color: #000000; ">, N</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">);<br /> }</span></div> <p> </p> <p>鏁扮粍闂鎬濊礬錛?/p> <p>鎺掑簭鎬濊礬</p> <p>鍔ㄦ佽鍒?/p> <p>鐪嬫垚涓涓暟鍒楁垨鍚戦噺</p> <p><br /> </p> <p>2.18鏁扮粍鍒嗗壊</p> <p><br /> </p> <p>3.1瀛楃涓茬Щ浣嶅寘鍚殑闂</p> <p>緇欏畾涓や釜瀛楃涓瞫1鍜宻2錛岃姹傚垽瀹歴2鑳藉惁琚玸1鍋氬驚鐜Щ浣嶅緱鍒扮殑瀛楃涓插寘鍚備緥濡傦細s1 = AABCD , s2 = CDAA錛岃繑鍥瀟rue. 緇欏畾s1 = ABCD 鍜?s2 = ACBD錛岃繑鍥瀎alse.</p> <p>瑙f硶1錛氭ā鎷熷瓧絎︿覆縐諱綅鐨勮繃紼嬶紝鍒ゆ柇鏄惁鍖呭惈瀛愪覆</p> <p>瑙f硶2錛氬垽鏂璼2鏄惁涓簊1s1鐨勫瓙涓插嵆鍙?/p> <p>瑙f硶3錛氫笉鐢寵絀洪棿錛屾ā鎷熷垽鏂璼2鏄惁涓簊1s1瀛愪覆鐨勮繃紼嬨?/p> <p>鎬濊礬錛氬瓧絎︿覆鍙互鎶借薄鎴愬悜閲忔潵鑰冭檻銆?/p> <p><br /> </p> <p>3.2鐢佃瘽鍙風爜瀵瑰簲鑻辮鍗曡瘝</p> <p>綾諱技浜庢眰騫傞泦闂</p> <p>瑙f硶1錛氳凱浠o紝鐢╳hile寰幆妯℃嫙</p> <p>瑙f硶2錛氶掑綊</p> <p> </p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.3璁$畻瀛楃涓茬浉浼煎害<br /> 閫掑綊姹傝В<br /> <div style="background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000FF; ">int</span><span style="color: #000000; "> calStrDis(</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">[] strA, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> pABegin, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> pAEnd, <br />             </span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">[] strB, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> pBBegin, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> pBEnd) {<br />         </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (pABegin </span><span style="color: #000000; ">></span><span style="color: #000000; "> pAEnd) {<br />             </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (pBBegin </span><span style="color: #000000; ">></span><span style="color: #000000; "> pBEnd) {<br />                 </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />             } </span><span style="color: #0000FF; ">else</span><span style="color: #000000; "> {<br />                 </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> pBEnd </span><span style="color: #000000; ">-</span><span style="color: #000000; "> pBBegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />             }<br />         }<br />         <br />         </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (pBBegin </span><span style="color: #000000; ">></span><span style="color: #000000; "> pBEnd) {<br />             </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (pABegin </span><span style="color: #000000; ">></span><span style="color: #000000; "> pAEnd) {<br />                 </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />             } </span><span style="color: #0000FF; ">else</span><span style="color: #000000; "> {<br />                 </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> pAEnd </span><span style="color: #000000; ">-</span><span style="color: #000000; "> pABegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />             }<br />         }<br />         <br />         </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (strA[pABegin] </span><span style="color: #000000; ">==</span><span style="color: #000000; "> strB[pBBegin]) {<br />             </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> calStrDis(strA, pABegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, pAEnd, strB,<br />                     pBBegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, pBEnd);<br />         } </span><span style="color: #0000FF; ">else</span><span style="color: #000000; "> {<br />             </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> t1 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> calStrDis(strA, pABegin, pAEnd, strB, pBBegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, <br />                     pBEnd);<br />             </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> t2 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> calStrDis(strA, pABegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, pAEnd, strB, pBBegin ,<br />                     pBEnd);<br />             </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> t3 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> calStrDis(strA, pABegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, pAEnd, strB, pBBegin </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; "> ,<br />                     pBEnd);<br />             </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> min(t1, t2, t3) </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />         }<br />     }</span></div> 閫掑綊浼樺寲錛屽浣曞瓨鍌ㄥ瓙闂鐨勮В錛?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.4浠庢棤澶撮摼琛ㄤ腑鍒犻櫎鑺傜偣<br /> 榪欎釜闂寰堟棤鑰?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.5鏈鐭憳瑕佺敓鎴?br /> 鏈夌┖鍐嶇湅</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.6緙栫▼鍒ゆ柇涓や釜閾捐〃鏄惁鐩鎬氦<br /> 杞寲鎴愰摼琛ㄦ槸鍚︽湁鐜殑闂</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.7闃熷垪涓彇鏈澶у兼搷浣?br /> 鍙垎瑙d負涓や釜瀛愰棶棰?br /> 瀛愰棶棰?錛氳璁′竴涓爢鏍堬紝浣垮叆鏍堬紝鍑烘爤錛屽彇鏈澶у肩殑鏃墮棿澶嶆潅搴﹂兘鏄疧(1)銆?br /> 鎬濊礬錛氱敤絀洪棿鎹㈡椂闂達紝鍔犱竴涓暟緇刲ink2NextMaxItem[]錛宭ink2NextMaxItem[i]瀛樺偍鐨勬槸鍓峣涓厓绱犱腑鏈澶у肩殑涓嬫爣銆?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">瀛愰棶棰?錛氱敤涓婅堪鐗規х殑涓や釜鍫嗘爤瀹炵幇涓涓槦鍒?br /> 鍫嗘爤A璐熻矗鍏ラ槦錛屽爢鏍圔璐熻矗鍑洪槦銆傚綋鍫嗘爤B絀虹殑鏃跺欙紝灝嗗爢鏍圓涓殑鏁版嵁鍏ㄩ儴寮瑰嚭騫跺帇鍏ュ爢鏍圔</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.8 姹備簩鍙夋爲緇撶偣涔嬮棿鐨勬渶澶ц窛紱?br /> 鍔ㄦ佽鍒掑疄鐜幫紝榪樻槸涓嶅お鎳傘?/span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.9閲嶅緩浜屽弶鏍?br /> 閫掑綊姹傝В</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.10鍒嗗眰閬嶅巻浜屽弶鏍?br /> 闃熷垪閬嶅巻浜屽弶鏍?鍙橀噺鏍囪灞傛</span></span></span></p> <p><span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-size: 10pt">3.11紼嬪簭鏀歸敊<br /> 緙栧啓姝g‘鐨勪簩鍒嗘悳绱㈢▼搴?br /> C浠g爜錛?br /> </span></span></span></p> <div style="padding-right: 5px; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left-color: #cccccc; width: 98%; word-break: break-all; padding-top: 4px; background-color: #eeeeee; "><span style="font-size: 10pt"><img id="Codehighlighter1_46_466_Open_Image" onclick="this.style.display='none'; Codehighlighter1_46_466_Open_Text.style.display='none'; Codehighlighter1_46_466_Closed_Image.style.display='inline'; Codehighlighter1_46_466_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_46_466_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_46_466_Closed_Text.style.display='none'; Codehighlighter1_46_466_Open_Image.style.display='inline'; Codehighlighter1_46_466_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="color: #0000ff">int</span><span style="color: #000000"> BinSearch(SeqList </span><span style="color: #000000">*</span><span style="color: #000000"> R錛?nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000"> n , KeyType K )</span><span id="Codehighlighter1_46_466_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_46_466_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{ </span><span style="color: #008000">//</span><span style="color: #008000">鍦ㄦ湁搴忚〃R[0..n-1]涓繘琛屼簩鍒嗘煡鎵撅紝鎴愬姛鏃惰繑鍥炵粨鐐圭殑浣嶇疆錛屽け璐ユ椂榪斿洖-1</span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" /></span></span><span style="font-size: 10pt"><span style="color: #0000ff">int</span><span style="color: #000000"> low</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">錛宧igh</span><span style="color: #000000">=</span><span style="color: #000000">n</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">錛宮id錛?nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">緗綋鍓嶆煡鎵懼尯闂翠笂銆佷笅鐣岀殑鍒濆?/span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" /></span></span><span style="font-size: 10pt"><span style="color: #000000">銆銆</span><span style="color: #0000ff">if</span><span style="color: #000000">(R[low].key</span><span style="color: #000000">==</span></span><span style="font-size: 10pt"><span style="color: #000000">K)<br /> <img id="Codehighlighter1_153_170_Open_Image" onclick="this.style.display='none'; Codehighlighter1_153_170_Open_Text.style.display='none'; Codehighlighter1_153_170_Closed_Image.style.display='inline'; Codehighlighter1_153_170_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_153_170_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_153_170_Closed_Text.style.display='none'; Codehighlighter1_153_170_Open_Image.style.display='inline'; Codehighlighter1_153_170_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆</span><span id="Codehighlighter1_153_170_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_153_170_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">return</span><span style="color: #000000"> </span><span style="color: #000000">0</span></span><span style="color: #000000"><span style="font-size: 10pt"> ;<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />銆銆}</span></span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img id="Codehighlighter1_190_423_Open_Image" onclick="this.style.display='none'; Codehighlighter1_190_423_Open_Text.style.display='none'; Codehighlighter1_190_423_Closed_Image.style.display='inline'; Codehighlighter1_190_423_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_190_423_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_190_423_Closed_Text.style.display='none'; Codehighlighter1_190_423_Open_Image.style.display='inline'; Codehighlighter1_190_423_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆</span></span><span style="font-size: 10pt"><span style="color: #0000ff">while</span><span style="color: #000000">(low</span><span style="color: #000000"><=</span><span style="color: #000000">high)</span><span id="Codehighlighter1_190_423_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_190_423_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{ </span><span style="color: #008000">//</span><span style="color: #008000">褰撳墠鏌ユ壘鍖洪棿R[low..high]闈炵┖</span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" /></span></span><span style="font-size: 10pt"><span style="color: #000000">銆銆mid</span><span style="color: #000000">=</span><span style="color: #000000">low</span><span style="color: #000000">+</span><span style="color: #000000">((high</span><span style="color: #000000">-</span><span style="color: #000000">low)</span><span style="color: #000000">/</span><span style="color: #000000">2</span><span style="color: #000000">)錛?/span><span style="color: #008000">//</span><span style="color: #008000">浣跨敤 (low + high) / 2 浼氭湁鏁存暟婧㈠嚭鐨勯棶棰?/span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" /></span></span><span style="font-size: 10pt"><span style="color: #000000">銆銆</span><span style="color: #0000ff">if</span><span style="color: #000000">(R[mid].key</span><span style="color: #000000">==</span></span><span style="font-size: 10pt"><span style="color: #000000">K)<br /> <img id="Codehighlighter1_294_321_Open_Image" onclick="this.style.display='none'; Codehighlighter1_294_321_Open_Text.style.display='none'; Codehighlighter1_294_321_Closed_Image.style.display='inline'; Codehighlighter1_294_321_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_294_321_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_294_321_Closed_Text.style.display='none'; Codehighlighter1_294_321_Open_Image.style.display='inline'; Codehighlighter1_294_321_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆</span><span id="Codehighlighter1_294_321_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_294_321_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">return</span><span style="color: #000000"> mid錛?nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">鏌ユ壘鎴愬姛榪斿洖</span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /></span></span><span style="color: #000000"><span style="font-size: 10pt">銆銆}</span></span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span></span><span style="font-size: 10pt"><span style="color: #0000ff">if</span><span style="color: #000000">(R[mid].key</span><span style="color: #000000">></span></span><span style="font-size: 10pt"><span style="color: #000000">K)<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆high</span><span style="color: #000000">=</span><span style="color: #000000">mid</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">; </span><span style="color: #008000">//</span><span style="color: #008000">緇х畫鍦≧[low..mid-1]涓煡鎵?/span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" /></span></span><span style="font-size: 10pt"><span style="color: #000000">銆銆</span><span style="color: #0000ff">else</span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆low</span></span><span style="font-size: 10pt"><span style="color: #000000">=</span><span style="color: #000000">mid</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">錛?nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">緇х畫鍦≧[mid+1..high]涓煡鎵?/span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /></span></span><span style="color: #000000"><span style="font-size: 10pt">銆銆}</span></span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span></span><span style="font-size: 10pt"><span style="color: #0000ff">return</span><span style="color: #000000"> </span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">錛?nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">褰搇ow>high鏃惰〃紺烘煡鎵懼尯闂翠負絀猴紝鏌ユ壘澶辮觸</span></span><span style="color: #008000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /></span></span><span style="color: #000000"><span style="font-size: 10pt">銆銆}</span></span></span><span style="font-size: 10pt"><span style="color: #000000"> </span><span style="color: #008000">//</span><span style="color: #008000">BinSeareh</span></span></div> <p><br /> <span style="font-size: 10pt">Java浠g爜錛?/span></p> <div style="padding-right: 5px; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left-color: #cccccc; width: 98%; word-break: break-all; padding-top: 4px; background-color: #eeeeee; "><span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">static</span><span style="color: #000000"> </span><span style="color: #0000ff">int</span><span style="color: #000000"> binarySearch(</span><span style="color: #0000ff">int</span><span style="color: #000000">[] srcArray, </span><span style="color: #0000ff">int</span></span><span style="font-size: 10pt"><span style="color: #000000"> des)<br /> <img id="Codehighlighter1_58_320_Open_Image" onclick="this.style.display='none'; Codehighlighter1_58_320_Open_Text.style.display='none'; Codehighlighter1_58_320_Closed_Image.style.display='inline'; Codehighlighter1_58_320_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_58_320_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_58_320_Closed_Text.style.display='none'; Codehighlighter1_58_320_Open_Image.style.display='inline'; Codehighlighter1_58_320_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" />銆銆</span><span id="Codehighlighter1_58_320_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_58_320_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">int</span><span style="color: #000000"> low </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">0</span></span><span style="font-size: 10pt"><span style="color: #000000">;<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">int</span><span style="color: #000000"> high </span><span style="color: #000000">=</span><span style="color: #000000"> srcArray.length</span><span style="color: #000000">-</span><span style="color: #000000">1</span></span><span style="font-size: 10pt"><span style="color: #000000">;<br /> <img id="Codehighlighter1_128_303_Open_Image" onclick="this.style.display='none'; Codehighlighter1_128_303_Open_Text.style.display='none'; Codehighlighter1_128_303_Closed_Image.style.display='inline'; Codehighlighter1_128_303_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_128_303_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_128_303_Closed_Text.style.display='none'; Codehighlighter1_128_303_Open_Image.style.display='inline'; Codehighlighter1_128_303_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">while</span><span style="color: #000000">(low </span><span style="color: #000000"><=</span><span style="color: #000000"> high) </span><span id="Codehighlighter1_128_303_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_128_303_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">int</span><span style="color: #000000"> middle </span><span style="color: #000000">=</span><span style="color: #000000"> (low </span><span style="color: #000000">+</span><span style="color: #000000"> high)</span><span style="color: #000000">/</span><span style="color: #000000">2</span></span><span style="font-size: 10pt"><span style="color: #000000">;<br /> <img id="Codehighlighter1_191_212_Open_Image" onclick="this.style.display='none'; Codehighlighter1_191_212_Open_Text.style.display='none'; Codehighlighter1_191_212_Closed_Image.style.display='inline'; Codehighlighter1_191_212_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_191_212_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_191_212_Closed_Text.style.display='none'; Codehighlighter1_191_212_Open_Image.style.display='inline'; Codehighlighter1_191_212_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">if</span><span style="color: #000000">(des </span><span style="color: #000000">==</span><span style="color: #000000"> srcArray[middle]) </span><span id="Codehighlighter1_191_212_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_191_212_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span><span style="color: #0000ff">return</span></span><span style="color: #000000"><span style="font-size: 10pt"> middle;<br /> <img id="Codehighlighter1_244_269_Open_Image" onclick="this.style.display='none'; Codehighlighter1_244_269_Open_Text.style.display='none'; Codehighlighter1_244_269_Closed_Image.style.display='inline'; Codehighlighter1_244_269_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_244_269_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_244_269_Closed_Text.style.display='none'; Codehighlighter1_244_269_Open_Image.style.display='inline'; Codehighlighter1_244_269_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆}</span></span></span><span style="font-size: 10pt"><span style="color: #0000ff">else</span><span style="color: #000000"> </span><span style="color: #0000ff">if</span><span style="color: #000000">(des </span><span style="color: #000000"><</span><span style="color: #000000">srcArray[middle]) </span><span id="Codehighlighter1_244_269_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_244_269_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆high </span><span style="color: #000000">=</span><span style="color: #000000"> middle </span><span style="color: #000000">-</span><span style="color: #000000"> </span><span style="color: #000000">1</span></span><span style="color: #000000"><span style="font-size: 10pt">;<br /> <img id="Codehighlighter1_275_299_Open_Image" onclick="this.style.display='none'; Codehighlighter1_275_299_Open_Text.style.display='none'; Codehighlighter1_275_299_Closed_Image.style.display='inline'; Codehighlighter1_275_299_Closed_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_275_299_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_275_299_Closed_Text.style.display='none'; Codehighlighter1_275_299_Open_Image.style.display='inline'; Codehighlighter1_275_299_Open_Text.style.display='inline';" alt="" src="http://www.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />銆銆}</span></span></span><span style="font-size: 10pt"><span style="color: #0000ff">else</span><span style="color: #000000"> </span><span id="Codehighlighter1_275_299_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.tkk7.com/Images/dot.gif" /></span></span><span id="Codehighlighter1_275_299_Open_Text"><span style="font-size: 10pt"><span style="color: #000000">{<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆low </span><span style="color: #000000">=</span><span style="color: #000000"> middle </span><span style="color: #000000">+</span><span style="color: #000000"> </span><span style="color: #000000">1</span></span><span style="color: #000000"><span style="font-size: 10pt">;<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />銆銆}</span></span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />銆銆}</span></span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" />銆銆</span></span><span style="font-size: 10pt"><span style="color: #0000ff">return</span><span style="color: #000000"> </span><span style="color: #000000">-</span><span style="color: #000000">1</span></span><span style="color: #000000"><span style="font-size: 10pt">;<br /> <img alt="" src="http://www.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />銆銆}</span></span></span><span style="color: #000000"><br /> <span style="font-size: 10pt"><img alt="" src="http://www.tkk7.com/images/OutliningIndicators/None.gif" align="top" /></span></span></div> <p><br /> <span style="font-size: 10pt">4.8涓夎褰㈡祴璇曠敤渚?br /> 嫻嬭瘯鐢ㄤ緥鐨勪笁縐嶇被鍨嬶細<br /> 姝e父杈撳叆 瑕嗙洊鍔熻兘鐐?br /> 闈炴硶杈撳叆 鍊煎煙閿欒 綾誨瀷閿欒<br /> 杈圭晫鍊艱緭鍏?0 1 MAX MIN </span></p> <img src ="http://www.tkk7.com/neverend/aggbug/333339.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/neverend/" target="_blank">neverend</a> 2010-09-29 11:10 <a href="http://www.tkk7.com/neverend/archive/2010/09/29/333339.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://tmg-beelen.com" target="_blank">国产天堂亚洲精品</a>| <a href="http://zhaoav7.com" target="_blank">99视频免费播放</a>| <a href="http://www-993789.com" target="_blank">亚洲日本一区二区</a>| <a href="http://xmjcjc.com" target="_blank">人妻视频一区二区三区免费</a>| <a href="http://zhaosaohuo.com" target="_blank">国产亚洲精品成人久久网站 </a>| <a href="http://ystchem.com" target="_blank">亚洲精品国偷自产在线</a>| <a href="http://wo93xyz.com" target="_blank">18女人水真多免费高清毛片</a>| <a href="http://www2019rz.com" target="_blank">亚洲精品美女久久久久久久</a>| <a href="http://cqshangshu.com" target="_blank">亚洲人成电影网站国产精品</a>| <a href="http://xsdggzs.com" target="_blank">国产1000部成人免费视频</a>| <a href="http://czshenyue.com" target="_blank">日韩一区二区三区免费播放</a>| <a href="http://918989b.com" target="_blank">亚洲天天做日日做天天欢毛片</a>| <a href="http://tttui.com" target="_blank">日本高清免费网站</a>| <a href="http://323c.com" target="_blank">久久大香伊焦在人线免费</a>| <a href="http://www3ratcom.com" target="_blank">亚洲AV无码片一区二区三区</a>| <a href="http://33303339.com" target="_blank">亚洲人JIZZ日本人</a>| <a href="http://wuiso.com" target="_blank">日本高清免费不卡视频</a>| <a href="http://35469642.com" target="_blank">日本在线看片免费人成视频1000</a>| <a href="http://5916733.com" target="_blank">久久人午夜亚洲精品无码区</a>| <a href="http://wusongtv.com" target="_blank">久久亚洲国产成人精品性色</a>| <a href="http://wwwav800.com" target="_blank">亚洲av无码成人精品区在线播放</a>| <a href="http://www-7479.com" target="_blank">91禁漫免费进入</a>| <a href="http://chinaedubrand.com" target="_blank">一级女性全黄生活片免费看</a>| <a href="http://0515bh.com" target="_blank">亚洲午夜精品一区二区公牛电影院</a>| <a href="http://cndianxian.com" target="_blank">五月婷婷亚洲综合</a>| <a href="http://www-84243.com" target="_blank">久久综合AV免费观看</a>| <a href="http://715686.com" target="_blank">日本一道本不卡免费 </a>| <a href="http://kingrel.com" target="_blank">亚洲情XO亚洲色XO无码</a>| <a href="http://www-yhty.com" target="_blank">午夜免费不卡毛片完整版</a>| <a href="http://wwwtoutoulu.com" target="_blank">久久青草免费91线频观看站街</a>| <a href="http://51wdn.com" target="_blank">色妞www精品视频免费看</a>| <a href="http://cndianxian.com" target="_blank">亚洲AV无码成人专区</a>| <a href="http://szq18888.com" target="_blank">亚洲av综合av一区</a>| <a href="http://yygcui.com" target="_blank">久久久久亚洲av毛片大</a>| <a href="http://vvww-3499.com" target="_blank">在线jyzzjyzz免费视频</a>| <a href="http://mcsser.com" target="_blank">日韩国产免费一区二区三区</a>| <a href="http://88109a.com" target="_blank">成人影片一区免费观看 </a>| <a href="http://changfafangzhi.com" target="_blank">尤物永久免费AV无码网站</a>| <a href="http://yy975.com" target="_blank">91精品免费久久久久久久久</a>| <a href="http://www-095666.com" target="_blank">国产在线观看xxxx免费</a>| <a href="http://j8j8x.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>