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 相关文章推荐
python实现rest请求api示例
Apr 22 Python
利用Python的Twisted框架实现webshell密码扫描器的教程
Apr 16 Python
python学习笔记之调用eval函数出现invalid syntax错误问题
Oct 18 Python
Python 模拟员工信息数据库操作的实例
Oct 23 Python
python中urlparse模块介绍与使用示例
Nov 19 Python
Python中单例模式总结
Feb 20 Python
使用anaconda的pip安装第三方python包的操作步骤
Jun 11 Python
详谈Python 窗体(tkinter)表格数据(Treeview)
Oct 11 Python
谈谈Python中的while循环语句
Mar 10 Python
详解python实现数据归一化处理的方式:(0,1)标准化
Jul 17 Python
Python3.7+tkinter实现查询界面功能
Dec 24 Python
python输出第n个默尼森数的实现示例
Mar 08 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中文验证码实现示例分享
2014/01/12 PHP
ThinkPHP实现批量删除数据的代码实例
2014/07/02 PHP
实例讲解yii2.0在php命令行中运行的步骤
2015/12/01 PHP
PHP+Mysql无刷新问答评论系统(源码)
2016/12/20 PHP
PHP依赖注入(DI)和控制反转(IoC)详解
2017/06/12 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
2020/05/14 PHP
javascript iframe编程相关代码
2009/12/28 Javascript
JavaScript中URL编码函数代码
2011/01/11 Javascript
JS 屏蔽按键效果与改变按键效果的示例代码
2013/12/24 Javascript
JavaScript中的apply和call函数详解
2014/07/20 Javascript
js实现仿QQ秀换装效果的方法
2015/03/04 Javascript
JavaScript与ActionScript3两者的同性与差异性
2016/09/22 Javascript
使用JavaScript实现在页面中显示距离2017年中秋节的天数
2017/09/26 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
vue做移动端适配最佳解决方案(亲测有效)
2018/09/04 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
微信小程序判断用户是否需要再次授权获取个人信息
2019/07/18 Javascript
vue element 中的table动态渲染实现(动态表头)
2019/11/21 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
支付宝小程序实现省市区三级联动
2020/06/21 Javascript
Python中函数的用法实例教程
2014/09/08 Python
使用Python进行二进制文件读写的简单方法(推荐)
2016/09/12 Python
Python获取CPU、内存使用率以及网络使用状态代码
2018/02/08 Python
Python代码实现http/https代理服务器的脚本
2019/08/12 Python
Flask和pyecharts实现动态数据可视化
2020/02/26 Python
Python OpenCV实现测量图片物体宽度
2020/05/27 Python
Keras实现支持masking的Flatten层代码
2020/06/16 Python
Django serializer优化类视图的实现示例
2020/07/16 Python
Python根据URL地址下载文件并保存至对应目录的实现
2020/11/15 Python
详解CSS3弹性伸缩盒
2020/09/21 HTML / CSS
斯巴达比赛商店:Spartan Race
2019/01/08 全球购物
两只小狮子教学反思
2014/02/05 职场文书
房地产营销策划方案
2014/02/08 职场文书
2014年客房部工作总结
2014/11/22 职场文书
详细总结Python常见的安全问题
2021/05/21 Python
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis