python做爲一種新的語言,在不少功能天然要比Java要好一些,也容易讓人接受,並且無論您是成年人仍是少兒均可以學習這個語言,今天就爲你們來分享一個python算法教程之希爾排序,如今咱們就來看看吧!python
希爾排序的算法思想:將待排序數組按照步長gap進行分組,而後將每組的元素利用直接插入排序的方法進行排序;每次將gap折半減少,循環上述操做;當gap=1時,利用直接插入,完成排序。算法
一樣的:從上面的描述中咱們能夠發現:希爾排序的整體實現應該由三個循環完成:數組
第一層循環:將gap依次折半,對序列進行分組,直到gap=1學習
第2、三層循環:也即直接插入排序所須要的兩次循環。具體描述見上。blog
那麼代碼是如何實現的呢?排序