import random
def insert_sort_gap(li,gap):
for i in range(gap,len(li)):
tmp = li[i]
j = i - gap
while j >= 0 and li[j] > tmp:
li[j+gap] = li[j]
j -= gap
li[j+gap] = tmp
def shell_sort(li):
d = len(li) // 2
while d >= 1:
insert_sort_gap(li,d)
d = d // 2
def main():
li = list(range(1000))
random.shuffle(li)
shell_sort(li)
print(li)
if __name__ == '__main__':
main()
import random
def insert_sort_gap(li,gap):
for i in range(gap,len(li)):
tmp = li[i]
j = i - gap
while j >= 0 and li[j] > tmp:
li[j+gap] = li[j]
j -= gap
li[j+gap] = tmp
def shell_sort(li):
d = len(li) // 2
while d >= 1:
insert_sort_gap(li,d)
d = d // 2
def main():
li = list(range(1000))
random.shuffle(li)
shell_sort(li)
print(li)
if __name__ == '__main__':
main()
希尔排序
原创navysummer 博主文章分类:数据结构与算法 ©著作权
©著作权归作者所有:来自51CTO博客作者navysummer的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
排序算法之计数排序的优化
排序算法之计数排序的优化
数组 计数排序 最小值 -
希尔排序
史上最简单的希尔排序(java实现)
数组 插入排序 希尔排序 置顶 稳定排序 -
java希尔排序 希尔排序java希尔排序 算法 arrays list date
-
告别“手绘序列帧”:Substance Designer中的程序化VFX材质工作流
本文旨在解决广大游戏VFX(视觉特效)美术师在创作特效序列帧时,长期依赖“逐帧手绘”,从而导致的“工作量巨大、修改困难、风格不稳定”的核心痛点。我们将深入探索 Adobe Substance 3D Designer (SD) 的程序化、非破坏性节点系统,构建一套从零开始、可随时“反悔”和“迭代”的动态特效材质生成工作流。通过本指南,你将学会如何利用噪声、扭曲和时间变量$time,来“搭建”而非“绘制”一个例如“爆炸”的完整动画序列帧图集,从而将VFX的创作,从一种“体力活”,提升为一种“设计活”。
#substance designer #材质 #贴图 #游戏 #游戏美术
















