希尔排序——Python实现
2024-08-31 02:02:18
一、排序思想
希尔排序思想请参见:https://www.cnblogs.com/luomeng/p/10592830.html
二、python实现
def shellSort(arr):
"""
python希尔排序
:param arr: 待排序列 step :步长值
"""
step = len(arr) // 2
while step > 0:
for rightIndex in range(step, len(arr)):
while rightIndex >= step and arr[rightIndex] < arr[rightIndex - step]:
arr[rightIndex - step], arr[rightIndex] = arr[rightIndex], arr[rightIndex - step]
rightIndex -= step
step //= 2 nums = [5, 6, 7, 2, 1, 65, 21, 22, 8, 0, 1] shellSort(nums) print(nums)
最新文章
- windows配置php开发环境
- 学习OpenCV——行人检测&;人脸检测(总算运行出来了)
- img标签使用默认图片的一种方式
- netstat用法
- SSH 端口转发
- ionic中input框禁止输入问题
- android 打包签名
- 十二、享元(Flyweight)模式--结构模式(Structural Pattern)
- 小米手机usb共享网络mac
- 关于sqlserver还原不了数据库的原因
- php 中的全局变量的理解
- [android游戏开发初学]SurfaceView初探之缓冲区测试
- 深透清晰理解Java高并发概述
- “var arr = []; ”和 “var arr = {};” 的区别
- struct 2 基本知识
- OpenResty和Resis一些基本的性能配置
- python3 文件操作练习 r+ w+ a+ 的理解
- 【1】学习C++时,一些零散知识点01
- COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问。最新解决方案
- matplotlib&;numpy画图