<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Skynet

    ---------- ---------- 我的新 blog : liukaiyi.cublog.cn ---------- ----------

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks

    # 快排 和 分治 很像 都是分而治之 ,但他們卻是 相反的 方式排序 :
    分治 是想拆分完成后,合并以有序的小段進行 排序 ,而快排是直接由原始的“拆分”來排序


    #encoding=utf-8
    #
    從 大 到 小
    def partition(A,p,r):
        tmp
    =A[p]
        
    while True :
            
    while p+1<and A[p] > tmp : p+=1
            
    while r-1>and A[r] <= tmp : r-=1    
        
    if A[p]<=A[r]: A[p],A[r]=A[r],A[p]
        
    if r-1<=p : return p


    def quickSort(A,p,r):
        
    if p<r:
            q
    =partition(A,p,r)
            quickSort(A,p,q)
            quickSort(A,q
    +1,r)

    A
    =[9,61,7,14,-1,7,667,3,6,8]
    print A
    quickSort(A,0,len(A)
    -1)
    print A
    # 結果
    [667, 61, 14, 9, 8, 7, 7, 6, 3, -1]



    圖解:
    一次迭代過程描述 (從小到大):
    1. 以 A[0] 為切分點 用臨時變量 記錄 這里是 切分點 = [5]
    2. 分別起 2枚指針 [切分起左,右]
    3. 分別向中間 靠攏 , 當左指針指向值大于 切分點 停止 左 , 右指針指向值 小于 切分點 停止 右 。
    4. 判斷 是否是  停止點 上 左值 小于 右值 是:交換兩指針值 !

    第一次迭代后 : 
      以初始分隔 [5]  就已經切分好了 小于 5 的左 ,大于等于5 的右




    整理 m.tkk7.com/Good-Game
    posted on 2009-12-03 17:11 劉凱毅 閱讀(1686) 評論(0)  編輯  收藏 所屬分類: python算法/函數
    主站蜘蛛池模板: 亚洲XX00视频| 老司机在线免费视频| 久久综合亚洲色HEZYO国产| 国产亚洲精品AAAA片APP| 国产免费人成在线视频| 亚洲国产成人久久一区二区三区 | 久久精品国产亚洲av水果派| a毛片在线免费观看| 亚洲AV日韩AV永久无码免下载| 嫩草在线视频www免费看| 亚洲成a人片77777老司机| 99久久精品国产免费| 亚洲另类自拍丝袜第1页| 青娱分类视频精品免费2| 亚洲综合色一区二区三区| 日韩在线a视频免费播放| 黄人成a动漫片免费网站| 亚洲一区二区三区影院| 99热精品在线免费观看| 亚洲制服丝袜精品久久| 青青草国产免费久久久91| 日产久久强奸免费的看| 亚洲AV无码乱码国产麻豆穿越| 精品一区二区三区无码免费视频 | 免费在线观看一级毛片| 国产乱子伦精品免费视频| 亚洲国产成人久久精品影视| 国产免费不卡v片在线观看| 亚洲乱码无人区卡1卡2卡3| 亚洲日韩中文字幕日韩在线| 日本免费电影一区二区| 亚洲日韩国产精品乱-久| 亚洲av无码乱码在线观看野外| a级毛片100部免费观看| 中文有码亚洲制服av片| 一本色道久久综合亚洲精品| 国产91色综合久久免费| 一级人做人爰a全过程免费视频| 久久久久亚洲AV无码麻豆| 国产三级免费电影| 特级无码毛片免费视频尤物|