用python实现将数组元素按从小到大的顺序排列方法

yipeiwu_com6年前Python基础

如下所示:

def findSmallest(arr):
 smallest = arr[0]#将第一个元素的值作为最小值赋给smallest
 smallest_index = 0#将第一个值的索引作为最小值的索引赋给smallest_index
 for i in range(1, len(arr)):
  if arr[i] < smallest:#对列表arr中的元素进行一一对比
   smallest = arr[i]
   smallest_index = i
 return smallest_index
 
 
def selectionSort(arr):
 newArr = []
 for i in range(len(arr)):
  smallest = findSmallest(arr)#一共要调用5次findSmallest
  newArr.append(arr.pop(smallest))#每一次都把findSmallest里面的最小值删除并存放在新的数组newArr中
 return newArr
print(selectionSort([5, 3, 6, 2, 10]))

运行结果如下:

[2, 3, 5, 6, 10]

以上这篇用python实现将数组元素按从小到大的顺序排列方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pytorch 自定义参数不更新方式

nn.Module中定义参数:不需要加cuda,可以求导,反向传播 class BiFPN(nn.Module): def __init__(self, fpn_sizes):...

python 实现提取某个索引中某个时间段的数据方法

如下所示: from elasticsearch import Elasticsearch import datetime import time import dateutil.p...

pandas.DataFrame的pivot()和unstack()实现行转列

pandas.DataFrame的pivot()和unstack()实现行转列

示例:有如下表需要进行行转列: 代码如下: # -*- coding:utf-8 -*- import pandas as pd import MySQLdb from wa...

Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】

Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】

本文实例讲述了Python实现定制自动化业务流量报表周报功能。分享给大家供大家参考,具体如下: 一 点睛 本次实践通过定制网站5个频道的流量报表周报,通过XlsxWriter 模块将流量...

python文件拆分与重组实例

python文件拆分与重组实例

文件拆分代码: #-*-encoding:utf-8-*- import os import sys import threading def getFileSi...