码迷,mamicode.com
首页 > 编程语言 > 详细

算法-选择、冒泡、插入

时间:2018-12-16 15:21:06      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:排序   算法   问题:   选择排序   第一个   位置   最小   个数   交换   

一、选择排序

  原理:比方说有一个数组:3,5,7,9,1;

  从第一个数字开始,后面的数字依次与第一个比较,如果小于第一个,则和第一个交换位置。比如这里的 1 < 3,则会变成1,5,7,9,3,这样下来,最小的会被放在第一个的位置上

  然后从第二个数字开始,后面的数字依次与第二个比较,这样,倒数第二小的数字会被放在第二个位置上

  怎么写?解决两个问题:

  1. 要写几个for循环?
  2. 找出每个for循环的边界

那么,我们的选择排序要几层循环呢???答案是两层。外层是往第几个位置上放元素/交换元素,里层是该位置的后面的每一个元素跟其比较

第一层的边界i:0~(数组长度-1)

第二层的边界j:(i+1)~(数组长度-1) 

算法-选择、冒泡、插入

标签:排序   算法   问题:   选择排序   第一个   位置   最小   个数   交换   

原文地址:https://www.cnblogs.com/xiaowenshu/p/10126562.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!