python实现shell排序

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#插入排序,缩小增量
def shell_sort(arr):
    gap = l = len(arr)
    while(gap > 1):
        gap = gap/2
        for i in xrange(0, l):
            for j in xrange(i, l - gap, gap):
                if arr[j] > arr[j+gap]:
                    arr[j], arr[j+gap] = arr[j+gap], arr[j]
    return arr

  

posted @ 2017-10-18 14:22  天空中的蜂蜂  阅读(476)  评论(0编辑  收藏  举报