python实现的希尔排序算法实例

yipeiwu_com5年前Python基础

本文实例讲述了python实现希尔排序算法的方法。分享给大家供大家参考。具体如下:

def shellSort(items):
  inc = len(items) / 2
  while inc:
    for i in xrange(len(items)):
      j = i
      temp = items[i]
      while j >= inc and items[j-inc] > temp:
        items[j] = items[j - inc]
        j -= inc
      items[j] = temp
    inc = inc/2 if inc/2 else (0 if inc==1 else 1)
a = [35, -8, 11, 1, 68, 0, 3];
shellSort(a)
print a # [-8, 0, 1, 3, 11, 35, 68]

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python正则表达式使用经典实例

下面列出Python正则表达式的几种匹配用法,具体内容如下所示: 此外,关于正则的一切http://deerchao.net/tutorials/regex/regex.htm 1....

python使用两种发邮件的方式smtp和outlook示例

smtp是直接调用163邮箱的smtp服务器,需要在163邮箱中设置一下。outlook发送就是Python直接调用win32方式。调用程序outlook直接发送邮件。 impor...

django自定义Field实现一个字段存储以逗号分隔的字符串

实现了在一个字段存储以逗号分隔的字符串,返回一个相应的列表 复制代码 代码如下:from django import formsfrom django.db import modelsf...

Python列表(list)、字典(dict)、字符串(string)基本操作小结

创建列表 复制代码 代码如下: sample_list = ['a',1,('a','b')] Python 列表操作 复制代码 代码如下: sample_list = ['a','b...

对python 数据处理中的LabelEncoder 和 OneHotEncoder详解

如下所示: #简单来说 LabelEncoder 是对不连续的数字或者文本进行编号 from sklearn.preprocessing import LabelEncoder le...