Python实现的选择排序算法示例


Posted in Python onNovember 29, 2017

本文实例讲述了Python实现的选择排序算法。分享给大家供大家参考,具体如下:

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。

选择排序每次只记录最大数的索引值. 类似于冒泡排序, 也是要比较n-1次, 区别是冒泡排序每次都交换, 选择排序只在最后比较完后才进行交换

示例代码:

#!/usr/bin/env python
# coding:utf-8
def selectSort(nums):
  for i in range(len(nums)):
    max_index = 0
    for j in range(len(nums)-i):
      if nums[max_index] < nums[j]:
        max_index = j
    nums[max_index], nums[len(nums)-i-1] = nums[len(nums)-i-1], nums[max_index]
  return nums
nums = [6,2,54435,3141]
print "三水点靠木测试结果:"
print selectSort(nums)

运行结果:

Python实现的选择排序算法示例

PS:关于排序算法的详细说明还可参考本站在线工具:

在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具
http://tools.3water.com/aideddesign/paixu_ys

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
合并Excel工作薄中成绩表的VBA代码,非常适合教育一线的朋友
Apr 09 Python
Python实现多行注释的另类方法
Aug 22 Python
在GitHub Pages上使用Pelican搭建博客的教程
Apr 25 Python
python读取和保存视频文件
Apr 16 Python
pytorch + visdom 处理简单分类问题的示例
Jun 04 Python
从请求到响应过程中django都做了哪些处理
Aug 01 Python
应用OpenCV和Python进行SIFT算法的实现详解
Aug 21 Python
如何在python中写hive脚本
Nov 08 Python
Python3爬虫mitmproxy的安装步骤
Jul 29 Python
python ssh 执行shell命令的示例
Sep 29 Python
django中cookiecutter的使用教程
Dec 03 Python
Python中requests做接口测试的方法
May 30 Python
Python实现的桶排序算法示例
Nov 29 #Python
[原创]教女朋友学Python(一)运行环境搭建
Nov 29 #Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
Nov 29 #Python
基于Python函数的作用域规则和闭包(详解)
Nov 29 #Python
JSONLINT:python的json数据验证库实例解析
Nov 28 #Python
详解如何使用Python编写vim插件
Nov 28 #Python
从头学Python之编写可执行的.py文件
Nov 28 #Python
You might like
php防攻击代码升级版
2010/12/29 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
yii实现model添加默认值的方法(2种方法)
2016/01/06 PHP
php 生成签名及验证签名详解
2016/10/26 PHP
js如何取消事件冒泡
2013/09/23 Javascript
jQuery+Ajax实现限制查询间隔的方法
2016/06/07 Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
2017/04/04 Javascript
分享十三个最佳JavaScript数据网格库
2017/04/07 Javascript
微信小程序页面传值实例分析
2017/04/19 Javascript
js数组常用最重要的方法
2018/02/04 Javascript
Node 搭建一个静态资源服务器的实现
2019/05/20 Javascript
小程序使用wxs解决wxml保留2位小数问题
2019/12/13 Javascript
vue 根据选择的月份动态展示日期对应的星期几
2021/02/06 Vue.js
python解析xml文件操作实例
2014/10/05 Python
Python编程实现的简单Web服务器示例
2017/06/22 Python
怎么使用pipenv管理你的python项目
2018/03/12 Python
python logging重复记录日志问题的解决方法
2018/07/12 Python
Django时区详解
2019/07/24 Python
详解如何在cmd命令窗口中搭建简单的python开发环境
2019/08/29 Python
python、Matlab求定积分的实现
2019/11/20 Python
django model的update时auto_now不被更新的原因及解决方式
2020/04/01 Python
Python实现文件压缩和解压的示例代码
2020/08/12 Python
python 实现图片修复(可用于去水印)
2020/11/19 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
viagogo意大利票务平台:演唱会、体育比赛、戏剧门票
2018/01/26 全球购物
微软美国官方网站:Microsoft美国
2018/05/10 全球购物
意大利火车票和铁路通行证专家:ItaliaRail
2019/01/22 全球购物
能否解释一下XSS cookie盗窃是什么意思
2012/06/02 面试题
JAVA招聘远程笔试题
2015/07/23 面试题
保护环境建议书300字
2014/05/13 职场文书
审计局2014法制宣传日活动总结
2014/11/01 职场文书
杭州西湖英语导游词
2015/02/03 职场文书
公司联欢会主持词
2015/07/04 职场文书
Vue的过滤器你真了解吗
2022/02/24 Vue.js
关于pytest结合csv模块实现csv格式的数据驱动问题
2022/05/30 Python