# -*- coding: utf-8 -*-

import random

def bubble_sort(seq):
n = len(seq)
for i in range(n-1):
print(seq)
for j in range(n-1-i):
if seq[j] > seq[j+1]:
seq[j], seq[j+1] = seq[j+1], seq[j]
print(seq) def test_bubble_sort():
seq = list(range(10))
random.shuffle(seq)
sorted_seq = sorted(seq)
bubble_sort(seq)
assert seq == sorted_seq def select_sort(seq):
n = len(seq)
for i in range(n-1):
min_idx = i
for j in range(i+1, n):
if seq[j] < seq[min_idx]:
min_idx = j
if min_idx != i:
seq[i], seq[min_idx] = seq[min_idx], seq[i] def test_select_sort():
seq = list(range(10))
random.shuffle(seq)
sorted_seq = sorted(seq)
select_sort(seq)
assert seq == sorted_seq def insertion_sort(seq):
n = len(seq)
print(seq)
for i in range(1, n):
value = seq[i]
pos = i
while pos > 0 and value < seq[pos-1]:
seq[pos] = seq[pos-1]
pos -= 1
seq[pos] = value
print(seq)

最新文章

  1. C#大数据文本高效去重
  2. HTML中嵌入pdf的简单方法
  3. Log4j2 - 配置
  4. Spike Notes on Theory of (Software) Transactional Memory[Doing]
  5. Linux基础-目录结构
  6. Theano2.1.17-基础知识之剖析theano的函数
  7. SQL初级第二课
  8. java 读取文件的常用方式
  9. SQLServer的ISNULL函数和Mysql的IFNULL函数
  10. HTML设置固定页脚飘浮
  11. 4052: [Cerc2013]Magical GCD
  12. 笔记整理:计算CPU使用率 ----linux 环境编程 从应用到内核
  13. 【2017集美大学1412软工实践_助教博客】团队作业6——展示博客(Alpha版本)
  14. LindDotNetCore~入门基础
  15. Java集合不能存放基本数据类型
  16. iOS12系统应用开发发送邮件
  17. nullptr/NULL
  18. sync;sync;sync;reboot
  19. (2) linux文件系统简介
  20. [简记] github 上的 GraphQL v4 API

热门文章

  1. app--Android 稳定性测试方案
  2. CEIWEI USBMonitor USB监控精灵 v2.3.2 USB过滤驱动 USB监控
  3. WXSS选择器
  4. 开启Hadoop和Spark的学习之路
  5. Jira 自定义工作流并设置触发器
  6. 漏洞复现之JBoss 4.x JBossMQ JMS 反序列化漏洞(CVE-2017-7504)
  7. Windows10+Anaconda+PyTorch(cpu版本)环境搭建
  8. k8s部署nacos
  9. 使用Jenkins编译打包SpringCloud微服务中的个别目录
  10. Linux mount/unmount 挂载和卸载指令