CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

简单选择排序最坏的情况的移动次数是多少啊?

楼主fullmoon525(满月)2006-03-03 16:51:25 在 C/C++ / C语言 提问

如提    
  麻烦解释一下 问题点数:50、回复次数:6Top

1 楼duduhaha(三人行必有我师)回复于 2006-03-03 17:04:09 得分 50

在最坏情况下为3(n-1)次(外循环执行n-1次,每次移动有三条赋值语句,固为3(n-1)次)。  
  void   swap(int   *a,   int   *b)  
  {  
      int   temp;  
      temp   =   *a;  
      *a   =   *b;  
      *b   =   temp;  
  }Top

2 楼lbing7(向青润老大学习!!!)回复于 2006-03-03 17:06:55 得分 0

好像是N!次Top

3 楼cyberHunK(→迈克·老猫←)回复于 2006-03-03 17:16:23 得分 0

一个集合中选择一个最小数,与首位交换位置!然后在待选集合中再次选择最小数与第二个交换位置....  
   
  最坏情况是每次循环到最后一次,也就是从n-1、n-2、n-3...1  
   
  等差数列求和为n(n-1)/2,这个为最坏情况的次数Top

4 楼duduhaha(三人行必有我师)回复于 2006-03-03 17:24:11 得分 0

n(n-1)/2是比较次数,而不是数据移动次数,这个要分清.移动次数是在swap语句中发生的.  
  如果调用swap的次数是n-1,每次需要3个赋值语句,那么总共就要3(n-1)次.  
  应该标准就是这样的.Top

5 楼bohlee(我心澎湃)回复于 2006-03-06 15:42:35 得分 0

markTop

6 楼wjd7623054(千古风流)回复于 2006-03-06 17:02:25 得分 0

我也同意是N!次Top

相关问题

  • 任何一个基于“比较”的内部排序的算法,若对6个元素进行排序,则在最坏情况下所需的比较次数至少为多少?
  • 查询某数出现次数及排序问题!(有难度)
  • 怎么样从一个文章里指出单词,并按次数排序.
  • 对象移动次数问题
  • 数据排序和移动的处理方法
  • 排序,排序
  • 直接选择排序算法在最好情况下所作的交换元素的次数为?
  • 请教 查询结果按重复出现值的次数排序的sql语句
  • 请教高手:关于DataGrid记录的排序问题:上下移动
  • 谁有统计连接被点击次数,并且连接按被点击次数排序的最简洁的方法,高分相送!

关键词

  • 语句
  • 移动
  • 选择
  • 最坏
  • 次数
  • 情况
  • swap
  • temp

得分解答快速导航

  • 帖主:fullmoon525
  • duduhaha

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo