
算法
文章平均质量分 75
Cricketol
total lol
展开
-
【学习笔记】用python实现bubblesort以及shakersort
冒泡排序的原理不多说,先看python版的bubblesort:#!/usr/bin/pythonimport sysn = len(sys.argv) - 1for i in range(n, 0, -1): # n to 1 for j in range(1, i): # 1 to i-1 if int(sys.argv[j], 10) > int(sys.argv原创 2013-02-16 08:07:46 · 1083 阅读 · 0 评论 -
【学习笔记】python版选择排序和插入排序及时间复杂度分析
选择排序原理:从N个未排序的数据项中选出最小数(这里假设我们按照升序排列),再从剩下的N-1个未排序的数据项中选出最小数,不断重复此过程,直到所有数被拍好序为止。以下为实现代码:#!/usr/bin/pythonimport sysn = len(sys.argv) - 1min_num = sys.maxintfor i in range(1, n): tmp_min =原创 2013-02-24 01:22:15 · 1628 阅读 · 0 评论 -
【学习笔记】python版希尔排序及其时间复杂度分析
希尔排序是插入排序的一个变种,插入排序是比较步长为1,而希尔排序的比较步长则不只是1,通常情况下是一个数组,数组不同则时间复杂度不同。来看代码:#!/bin/pythonimport sysn = len(sys.argv) - 1gaps = [72, 36, 24, 18, 12, 9, 8, 6, 4, 3, 2, 1]for gap in gaps: for i i原创 2013-02-24 09:46:21 · 1380 阅读 · 0 评论