——参考自《算法图解》

 def findSmallest(arr):
# 假设第一个元素最小
smallest = arr[0]
smallest_index = 0
for i in range(1,len(arr)):
if arr[i] < smallest:
smallest = arr[i]
smallest_index = i
return smallest_index def selectionSort(arr):
newArr = []
for i in range(len(arr)):
smallest = findSmallest(arr) # 查找新数组中最小的
newArr.append((arr.pop(smallest))) # 讲最小的元素取出,放到新数组中
return newArr # 测试一下
print(selectionSort([5, 3, 6, 2, 10])) # [2, 3, 5, 6, 10]

最新文章

  1. 关于点击Invalidate Caches/Restart禁止插件后,重新加载--Android Studio
  2. Javascript实现的数组降维——维度不同,怎么谈恋爱
  3. 从零开始编写自己的C#框架(7)——需求分析
  4. python import其他文件夹下的模块
  5. Android快捷便利但不常被使用的原生工具类
  6. JAVA自动化测试数据设计
  7. 网友微笑分享原创Jquery实现瀑布流特效
  8. Javascript 类与静态类的实现-js面向对象
  9. zoj3820 Building Fire Stations 树的中心
  10. Jin Ge Jin Qu hao
  11. PC返回顶部浮动按钮
  12. microchip PIC芯片使用方法
  13. 关于最优化读写,测试各个加锁:Lock、安全字典、信号量、ReaderWriterLock、ReaderWriterLockSlim
  14. Elasticsearch 的分页报错 result window is too large
  15. 在centos7上修改docker加速镜像为阿里云
  16. JAVA接口传递参数(POST),从接口接收数据(JSON) -----记录
  17. Oracle左连接、右连接、全外连接以及(+)号用法
  18. VC++6.0远程调试(亲试成功)
  19. DevExpress中Tile Application窗体的模型架构图
  20. 3192: [JLOI2013]删除物品

热门文章

  1. NBU5240备份系统还原数据库--Linux版
  2. Spotlight_on_linux 安装和监控
  3. maven 高级玩法
  4. socket的补充
  5. laravel中model类中好用的方法
  6. soj#2402 「THUPC 2017」天天爱射击 / Shooting
  7. value是列表的字典排序
  8. JavaScript基础篇详解
  9. Unity UI —Text
  10. cocos2dx基础篇(16) 基本绘图DrawPrimitives