• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            我希望你是我獨(dú)家記憶

            一段永遠(yuǎn)封存的記憶,隨風(fēng)而去
            posts - 263, comments - 31, trackbacks - 0, articles - 3
               :: 首頁(yè) :: 新隨筆 ::  :: 聚合  :: 管理

            不上升序列的最小分劃

            Posted on 2008-08-20 21:31 Hero 閱讀(356) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 資料整理

             

             1 一個(gè)著名的定理是這樣的:最長(zhǎng)上升序列的長(zhǎng)度等于不上升序列的最小分劃(即將平面上的點(diǎn)分劃成盡可能少的不相交的不上升序列)。下面我們就來(lái)給出這個(gè)定理的證明,在證明的過(guò)程中,我們甚至可以得到求具體分割方案的方法。
             2 證明:
             3 一個(gè)顯然的結(jié)論是最長(zhǎng)上升序列的長(zhǎng)度小于等于不上升序列的最小分劃。因?yàn)樯仙蛄兄腥我鈨牲c(diǎn)都不可能屬于同一個(gè)不上升序列。也就是說(shuō),最長(zhǎng)上升序列中的所有點(diǎn)分屬不同的不上升序列。所以,不上升序列的分劃數(shù)最少也不會(huì)少于最長(zhǎng)上升序列的長(zhǎng)度。
             4 關(guān)鍵的是要證明,最長(zhǎng)上升序列的長(zhǎng)度大于等于不上升序列的最小分劃。我們來(lái)構(gòu)造一個(gè)不上升序列的分劃。
             5 首先在二維Euclid空間中取出所有的滿足如下性質(zhì)的點(diǎn)(x, y):對(duì)于任意的點(diǎn)(x'', y''),總滿足x''≤x || y''≤y,即(x,y)的“右上方”沒(méi)有別的點(diǎn)。可以證明,取出的點(diǎn)集{(x,y)}是一條不上升序列。因?yàn)辄c(diǎn)集中任意兩點(diǎn)(x1, y1)和(x2, y2)總滿足x1≤x2 || y1≤y2且x2≤x1 || y2≤y1,整理一下即得(x1≤x2)xor(y1≤y2)=true。所以,把這些點(diǎn)按x升序排列后,得到的y相應(yīng)的成降序。
             6 將上面取出的點(diǎn)從空間中去除后,重復(fù)上述過(guò)程,又可以得到一條新的不上升序列。如此反復(fù)……可以得到一個(gè)不上升序列的分劃(現(xiàn)在還不能肯定這就是最小的分劃)。由前面的結(jié)論知道,這個(gè)分劃數(shù)必定大于等于最長(zhǎng)上升序列的長(zhǎng)度。
             7 我們對(duì)得到的不上升序列分劃進(jìn)行分級(jí),先取出的等級(jí)最高,最后取出的等級(jí)最低。這樣就得到k條分屬level1,level2,…,levelk的不上升序列。
             8 這些鏈上的點(diǎn)滿足這樣的性質(zhì):對(duì)于一個(gè)屬于leveli(i<k)鏈上的點(diǎn)(x, y),必然存在一個(gè)屬于leveli+1的點(diǎn)(x'', y''),使得x<x'' && y<y''。否則(x, y)在取leveli+l鏈時(shí)就會(huì)被取走,不應(yīng)屬于leveli。
             9 從level1上的一點(diǎn)(x1, y1)開(kāi)始,取level2的點(diǎn)(x2, y2),x2>x1 && y2>y1,然后取level3的點(diǎn)(x3, y3)……最后必然能取到levelk上的點(diǎn)(xk, yk)。如此得到的序列(x1, y1),(x2, y2),…,(xk, yk),就是一條上升序列。所以,我們前面得到的不上升序列的分劃數(shù)就不可能大于最長(zhǎng)上升序列長(zhǎng)度。
            10 這就證明了最長(zhǎng)上升序列的長(zhǎng)度大于等于不上升序列的最小分劃。再加上“最長(zhǎng)上升序列的長(zhǎng)度小于等于不上升序列的最小分劃”的結(jié)論,就證明了最長(zhǎng)上升序列的長(zhǎng)度等于不上升序列的最小分劃。
            11 這個(gè)證明的優(yōu)點(diǎn)在于,它是一個(gè)構(gòu)造性的證明,并且揭示了最長(zhǎng)上升序列與不上升序列最小分劃之間的較為深刻的關(guān)系。
            12 根據(jù)前面的證明,我們可以很容易得到兩種解決本題的方法:
            13 1)在給出的二元組中求出最長(zhǎng)下降序列的長(zhǎng)度(具體實(shí)現(xiàn)比較簡(jiǎn)單,這里就從略了);
            14 2)用類似Topologic排序的方法,構(gòu)造性的求出不下降序列的最小分割(詳細(xì)過(guò)程見(jiàn)證明)。
            15 這兩種方法的時(shí)間復(fù)雜度都是O(n2)的。實(shí)際上,本題還能優(yōu)化到O(nlog2n)級(jí),考慮到題目的規(guī)模以及本文的側(cè)重點(diǎn),這里就不詳細(xì)展開(kāi)了。此外,前面講的方法(2),也是求最長(zhǎng)雙鏈問(wèn)題的一個(gè)基礎(chǔ)。
            国产成人久久精品一区二区三区| 人人狠狠综合久久亚洲婷婷| 色综合久久久久网| 久久久久人妻一区二区三区vr| 性高朝久久久久久久久久| 精品久久久久中文字| 伊人热人久久中文字幕| 欧美精品一本久久男人的天堂| 久久久久四虎国产精品| 精品九九久久国内精品| 久久久久综合网久久| 国内精品久久久久久中文字幕| 国产精品久久久久一区二区三区| 精品欧美一区二区三区久久久| 国产精品美女久久久网AV| 久久久久久国产精品美女| 亚洲欧洲久久av| 一本色综合网久久| 国产精品久久久久久久久| 91久久成人免费| 一级女性全黄久久生活片免费 | 久久综合九色综合久99| 久久国产精品国语对白| 综合久久一区二区三区 | 日产精品久久久一区二区| 久久精品人人做人人妻人人玩| 久久久青草久久久青草| 日韩欧美亚洲综合久久影院Ds| 狠狠色婷婷久久综合频道日韩 | 国产精品一区二区久久不卡| 久久精品这里热有精品| 思思久久好好热精品国产| 国产高潮国产高潮久久久| 精品久久久久国产免费| 精品久久久无码人妻中文字幕| 久久精品国产只有精品2020| 伊人热热久久原色播放www| 韩国三级大全久久网站| 精品伊人久久久| 久久国产一片免费观看| 97久久精品无码一区二区天美 |