美文网首页
插入排序 by Python

插入排序 by Python

作者: 慧鑫coming | 来源:发表于2019-01-31 05:19 被阅读0次

最好时间复杂度:O(n)
最坏时间复杂度:O(n²)
平均时间复杂度:O(n²)
空间复杂度:O(1)
是否为稳定排序:Yes
sort in place:Yes
python 实现:

class Solution:
    def insertionSort(self, nums):
        m = 0
        for i in range(1, len(nums)):
            val = nums[i]
            for j in range(i, -1, -1):
                m = j
                if nums[j-1] > val:
                    nums[j] = nums[j-1]
                else:
                    break
            nums[m] = val
        return

if __name__ == "__main__":
    nums = [20,1,3,2,4,6,8,4,5,6,7,3,2,1,10,15,21,12]
    s = Solution()
    s.selectionSort(nums)
    print(nums)

相关文章

  • [中等] 147. 对链表进行插入排序

    欢迎关注 leetcode 专栏 题目 解法常规解法Python 专属解法 题目 对链表进行插入排序。 插入排序的...

  • 排序算法(一):插入排序

    插入排序算法用Python的两种表示方法

  • python实现插入排序(InsertSort)

    python实现【插入排序】 算法原理及介绍 插入排序(Insertion-Sort)的算法描述是一种简单直观的排...

  • 排序算法详细代码实现

    算法分类 算法时间复杂度 选择排序 插入排序 C++实现 Python实现 冒泡排序 Python实现 归并排序 ...

  • Python排序算法有哪几种?

    python排序算法有哪些?python中常见的排序算法有:插入排序、选择排序、冒泡排序、快速排序、归并排序、希尔...

  • python插入排序

    插入排序的主要思想就是:每次取得一个列表元素,与已排序好的列表进行比较,然后插入相应的位置,最终获得排序好的列表。...

  • python 插入排序

  • 插入排序python

    一、概念及原理插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序...

  • 插入排序——Python

    算法步骤将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。从头到尾依次扫描未...

  • python插入排序

    def insertion_sort(array):for index in range(1, len(array)):

网友评论

      本文标题:插入排序 by Python

      本文链接:https://www.haomeiwen.com/subject/nhrhsqtx.html