Algorithms - Insertion Sort - 插入排序
Insertion Sort - 插入排序
插入排序算法的 '时间复杂度' 是输入规模的二次函数, 深度抽象后表示为, n 的二次方. import time, random
F = 0
alist = []
while F < 13:
F += 1
alist.append(random.randrange(0,100))
j =1
print("List-O",alist)
startT =time.time()
while j < alist.__len__():
factor = alist[j]
j += 1
print("-",factor)
i = j -1
while i > 0:
i -= 1
if alist[i] > factor:
alist[i],alist[i+1] = alist[i+1],alist[i]
print("Steps", alist)
endT = time.time()
print("List-S", alist)
print("Time elapsed :", endT - startT) Output,
List-O [67, 22, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
- 22
Steps [22, 67, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
- 94
Steps [22, 67, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 67, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
- 33
Steps [22, 67, 33, 94, 81, 92, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 94, 81, 92, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 94, 81, 92, 65, 94, 56, 10, 55, 5, 64]
- 81
Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
- 92
Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
- 65
Steps [22, 33, 67, 81, 92, 65, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 81, 65, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 67, 65, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
- 94
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
- 56
Steps [22, 33, 65, 67, 81, 92, 94, 56, 94, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 92, 56, 94, 94, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 81, 56, 92, 94, 94, 10, 55, 5, 64]
Steps [22, 33, 65, 67, 56, 81, 92, 94, 94, 10, 55, 5, 64]
Steps [22, 33, 65, 56, 67, 81, 92, 94, 94, 10, 55, 5, 64]
Steps [22, 33, 56, 65, 67, 81, 92, 94, 94, 10, 55, 5, 64]
Steps [22, 33, 56, 65, 67, 81, 92, 94, 94, 10, 55, 5, 64]
Steps [22, 33, 56, 65, 67, 81, 92, 94, 94, 10, 55, 5, 64]
- 10
Steps [22, 33, 56, 65, 67, 81, 92, 94, 10, 94, 55, 5, 64]
Steps [22, 33, 56, 65, 67, 81, 92, 10, 94, 94, 55, 5, 64]
Steps [22, 33, 56, 65, 67, 81, 10, 92, 94, 94, 55, 5, 64]
Steps [22, 33, 56, 65, 67, 10, 81, 92, 94, 94, 55, 5, 64]
Steps [22, 33, 56, 65, 10, 67, 81, 92, 94, 94, 55, 5, 64]
Steps [22, 33, 56, 10, 65, 67, 81, 92, 94, 94, 55, 5, 64]
Steps [22, 33, 10, 56, 65, 67, 81, 92, 94, 94, 55, 5, 64]
Steps [22, 10, 33, 56, 65, 67, 81, 92, 94, 94, 55, 5, 64]
Steps [10, 22, 33, 56, 65, 67, 81, 92, 94, 94, 55, 5, 64]
- 55
Steps [10, 22, 33, 56, 65, 67, 81, 92, 94, 55, 94, 5, 64]
Steps [10, 22, 33, 56, 65, 67, 81, 92, 55, 94, 94, 5, 64]
Steps [10, 22, 33, 56, 65, 67, 81, 55, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 56, 65, 67, 55, 81, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 56, 65, 55, 67, 81, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 56, 55, 65, 67, 81, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
- 5
Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 5, 94, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 5, 94, 94, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 81, 5, 92, 94, 94, 64]
Steps [10, 22, 33, 55, 56, 65, 67, 5, 81, 92, 94, 94, 64]
Steps [10, 22, 33, 55, 56, 65, 5, 67, 81, 92, 94, 94, 64]
Steps [10, 22, 33, 55, 56, 5, 65, 67, 81, 92, 94, 94, 64]
Steps [10, 22, 33, 55, 5, 56, 65, 67, 81, 92, 94, 94, 64]
Steps [10, 22, 33, 5, 55, 56, 65, 67, 81, 92, 94, 94, 64]
Steps [10, 22, 5, 33, 55, 56, 65, 67, 81, 92, 94, 94, 64]
Steps [10, 5, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 64]
Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 64]
- 64
Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 64, 94]
Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 92, 64, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 64, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 65, 67, 64, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 65, 64, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
List-S [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
Time elapsed : 0.015672683715820312
Algorithms - Insertion Sort - 插入排序的更多相关文章
- [Algorithms] Sorting Algorithms (Insertion Sort, Bubble Sort, Merge Sort and Quicksort)
Recently I systematicall review some sorting algorithms, including insertion sort, bubble sort, merg ...
- Algorithms - Insertion sort
印象 图1 插入排序过程 思想 插入排序(Insertion Sort)的主要思想是不断地将待排序的元素插入到有序序列中,是有序序列不断地扩大,直至所有元素都被插入到有序序列中. 分析 时间复杂度: ...
- [Algorithms] Insertion sort algorithm using TypeScript
Insertion sort is a very intuitive algorithm as humans use this pattern naturally when sorting cards ...
- insertion sort(插入排序)
#include<stdio.h> #include<time.h> int insertion_sort() { ; int a[max],i,j; srand((unsig ...
- 经典排序算法 – 插入排序Insertion sort
经典排序算法 – 插入排序Insertion sort 插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕. 插入排序方法分直接插入排序和折半插入排序两种, ...
- 【排序基础】5、插入排序法 - Insertion Sort
插入排序法 - Insertion Sort 文章目录 插入排序法 - Insertion Sort 插入排序设计思想 插入排序代码实现 操作:插入排序与选择排序的比较 简单记录-bobo老师的玩转算 ...
- leetcode 147. Insertion Sort List ----- java
Sort a linked list using insertion sort. 插入排序. /** * Definition for singly-linked list. * public cla ...
- [LeetCode] Insertion Sort List 链表插入排序
Sort a linked list using insertion sort. 链表的插入排序实现原理很简单,就是一个元素一个元素的从原链表中取出来,然后按顺序插入到新链表中,时间复杂度为O(n2) ...
- [算法] 插入排序 Insertion Sort
插入排序(Insertion Sort)是一种简单直观的排序算法.它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入.插入排序在实现上,通常采用in-pla ...
随机推荐
- SpringBoot+Neo4j在社交电商中,讲述你是怎么被绑定为下线的
上两篇文章我们主要讲解了Neo4j的基本知识以及Neo4j的基本使用,这篇文章我们就以实例来深入的理解一下,我们以社交电商中的绑定关系为例,使用SpringBoot+Neo4j来实现. Neo4j文章 ...
- C#实现EXCEL表格转DataTable
C#代码实现把Excel文件转化为DataTable,根据Excel的文件后缀名不同,用不同的方法来进行实现,下面通过根据Excel文件的两种后缀名(*.xlsx和*.xls)分别来实现.获取文件后缀 ...
- 「1.0」一个人开发一个App,小程序从0到1,起航了
古有,秦.齐.楚.赵.魏.韩.燕七国争雄:今有,微信.QQ.百度.支付宝.钉钉.头条.抖音七台争霸.古有,白起.李牧.王翦.孙膑.庞涓.赵奢.廉颇驰骋疆场:今有程序员1,程序员2,程序员3…编写代码. ...
- ElasticSearch 倒排索引简析
内容概要 倒排索引是什么?为什么需要倒排索引? 倒排索引是怎么工作的? 1. 倒排索引是什么? 假设有一个交友网站,信息表如下: 美女1:"我要找在上海做 PHP 的哥哥." 需要 ...
- [洛谷P2962] [USACO09NOV] 灯Lights
Description Bessie and the cows were playing games in the barn, but the power was reset and the ligh ...
- ElEmentUI选择器弹出框定位错乱问题解决(弹出框出现在左上角)
这个是原问题,我之前是没问题的,后来的突然出现了这个问题,查了好多没找到,后来看文档才发现的.通过这个问题,说明看文档的重要性,嘻嘻 解决办法是在选择器里插入一个 :popper-append-to- ...
- 提供程序模式 提供 coding 一点点
放个图先,预则立码
- 改进Zhang Suen细化算法的C#实现
本文主要实现了改进Zhang Suen细化算法的C#实现,相关论文 :“牟少敏,杜海洋,苏平,查绪恒,陈光艺.一种改进的快速并行细化算法[J].微电子学与计算机,2013,(第1期)” .这篇论文中关 ...
- export 和 export default 的区别
export命令用于规定模块的对外接口. 一个模块就是一个独立的文件.该文件内部的所有变量,外部无法获取.如果你希望外部能够读取模块内部的某个变量,就必须使用export关键字输出该变量.下面是一个 ...
- Python中随机数的生成
在Python中要实现随机数的生成,需要使用random模块中randint方法. 其具体实现方法如下: import random a = random.randint(1,20) #(1,20)为 ...