传智播客C#基础--选择排序--03

举报
ksh1998 发表于 2021/12/25 23:46:31 2021/12/25
【摘要】 选择排序  就用这个整数数组,进行选择排序int[] number = { 2,5,6,1,9,6,2,0}; 概念:先假设第一个元素里面的数是最大的。然后用第一个元素里面的数和后面的每一个元素里的数做对比,符合你的要求就把里面的数值进行交换,交换完之后继续往后对比。按照从大到小排序,每轮对比完都会产生一个本轮最大的放到前...

选择排序

 就用这个整数数组,进行选择排序int[] number = { 2,5,6,1,9,6,2,0};

概念:先假设第一个元素里面的数是最大的。然后用第一个元素里面的数和后面的每一个元素里的数做对比,符合你的要求就把里面的数值进行交换,交换完之后继续往后对比。按照从大到小排序,每轮对比完都会产生一个本轮最大的放到前面。

代码:


  
  1. //选择排序
  2. int[] number = { 2,5,6,1,9,6,2,0};
  3. //从大到小排序
  4. int temp = 0;//临时变量
  5. //排序之前
  6. Console.WriteLine("选择排序之前");
  7. for (int z = 0; z < number.Length; z++)
  8. {
  9. Console.Write(number[z] + "\t");
  10. }
  11. //排序
  12. //最多对比次数
  13. for (int i = 0; i <number.Length; i++)
  14. {
  15. //每次对比完,再次对比都会减少一个对比元素。
  16. //每个元素的对比次数
  17. for (int j = i+1; j <number.Length; j++)
  18. {
  19. //判断大小交换变量位置
  20. if (number[i]<number[j])
  21. {
  22. //如果前的小于后面的,就交换顺序
  23. temp = number[i];
  24. number[i] = number[j];
  25. number[j] = temp;
  26. }
  27. }
  28. }
  29. Console.WriteLine();
  30. //对比之后
  31. Console.WriteLine("选择排序之后");
  32. Console.WriteLine();
  33. foreach (int item in number)
  34. {
  35. Console.Write(item +"\t");
  36. }
  37. Console.ReadKey();

结果:(从大到小排序)

文章来源: kangshihang.blog.csdn.net,作者:康世行,版权归原作者所有,如需转载,请联系作者。

原文链接:kangshihang.blog.csdn.net/article/details/102289093

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。