C#实现整数冒泡排序、选择排序
/// <summary>
/// 交换两个整数的值
/// </summary>
/// <param name="aa">数1</param>
/// <param name="bb">数2</param>
private static void Swap(ref int aa,ref int bb)
{
int temp;
temp = bb;
bb = aa;
aa = temp;
}
// 冒泡排序
class Program
{
static void Main(string[] args)
{
int[] a={1,2,5,7,9,8,10,6,4,3};
BubbleSort(a);
for (int i = 0; i < a.Length; i++)
Console.Write(a[i] + " ");
Console.ReadKey();
}
/// <summary>
/// 冒泡排序
/// </summary>
/// <param name="a">传入要排序的数组</param>
private static void BubbleSort(int[] a)
{
for (int i = 0; i < a.Length - 1; i++)
{
for (int j = 0; j < a.Length - i - 1; j++)
{
if (a[j] < a[j + 1])//降序排列
{
Swap(ref a[j], ref a[j + 1]);
}
}
}
}
}
//选择排序
class Program
{
static void Main(string[] args)
{
int[] a = { 1, 2, 4, 3,6,5,7,9,8 };
SelectionSort(a);
for (int i = 0; i < a.Length; i++)
Console.Write(a[i] + " ");
Console.ReadKey();
}
/// <summary>
/// 选择排序
/// </summary>
/// <param name="a">传入要排序的数组</param>
private static void SelectionSort(int[] a)
{
int k;
for (int i = 0; i < a.Length - 1; i++)
{
k = i;
for (int j = i+1; j < a.Length ; j++)
{
if (a[j] < a[k])//升序排列
{
k = j;
}
}
if(k!=i)
Swap(ref a[i], ref a[k]);
}
}
}
--摘自zhouhb
转载于:https://www.cnblogs.com/wangliqiang1026/p/4332068.html
C#实现整数冒泡排序、选择排序相关推荐
- 冒泡排序选择排序插入排序
目录 冒泡排序 选择排序 插入排序 冒泡排序 冒泡排序(最好是O(n), 最坏O(n2)) 原理: 拿自己与上面一个比较,如果上面一个比自己小就将自己和上面一个调换位置,依次再与上面一个比较,第一轮结 ...
- 【排序算法】冒泡排序|选择排序|插入排序|希尔排序
文章目录 冒泡排序 选择排序 插入排序 希尔排序 冒泡排序 第一个元素开始向第二个元素比较,若大于则交换位置,不大于则不动.然后第二个元素和第三个元素比较,再然后第三个元素和第四个元素比较-一直比 ...
- c语言数组项目按身高排序,过三关 Java冒泡排序选择排序插入排序小练习
材料:猴子排序,按照身高来从小到大来排序. 第一关: 老猴子带领小猴子队伍按大小逐一比较,交换,开始高矮排列队伍.(冒泡排序) 第二关: 太慢了,给第一关增加难度,进行选择排序 第三关: 最后,尝试选 ...
- 十大经典排序算法详解(一)冒泡排序,选择排序,插入排序
养成习惯,先赞后看!!! 你的点赞与关注真的对我非常有帮助.如果可以的话,动动手指,一键三连吧!!! 目录 1.算法的评判标准 2.排序算法的分类 3.十大经典排序算法-冒泡排序,选择排序,插入排序 ...
- Java 知识点整理-7.StringBuffer类+冒泡排序+选择排序+二分法+Arrays类+基本数据类型的包装类
1.StringBuffer类概述:线程安全的可变字符序列,一个类似于String的字符串缓冲区,但不能修改(不能像String那样用加号与其他类型数据连接),但通过某些方法调用可以改变该序列的长度和 ...
- C语言——十四种内部排序算法【直接插入排序-冒泡排序-选择排序-插入排序-希尔排序-归并排序-快速排序-堆排序-折半插入排序-二分查找-路插入排序-表插入排序-简单选择排序-直接选择排序-树形选择】
目录: 一:插入排序 A:直接插入排序 1.定义: 2.算法演示 实例1: 3.基本思想 4.排序流程图 实例1: B:希尔排序 1.定义: 2.算法演示 实例2: C:其他插入排序 a:折半插入排序 ...
- 【算法导论】冒泡排序 选择排序
冒泡排序: //从大到小 void bubble_sort(int array[],int len) {int i,j,t;for(i=0;i<len-1;i++){for(j=0;j<l ...
- java冒泡排序函数验证_java冒泡排序-选择排序-插入排序-使用API中文文档直接调用函数...
import java.util.Arrays; public class ArrayDemo2_3 { public static void main(String []args) { //---- ...
- 过三关 Java冒泡排序选择排序插入排序小练习
材料:猴子排序,按照身高来从小到大来排序. 第一关: 老猴子带领小猴子队伍按大小逐一比较,交换,开始高矮排列队伍.(冒泡排序) 第二关: 太慢了,给第一关增加难度,进行选择排序 第三关: 最后,尝试选 ...
- 冒泡排序 选择排序 快速排序(C语言)
#include <stdio.h> #include <stdlib.h> #include <time.h> //用到了time函数#define arrayS ...
最新文章
- LeetCode实战:相交链表
- 数据分析利器:XGBoost算法最佳解析
- TextView之二:常用属性
- 【学习笔记】【C语言】类型说明符
- Python入门(03) -- 字典
- D* Lite(D star lite) 算法 python
- 关于计算机组件游戏,Windows系统运行库/游戏运行库组件怎么补全?
- BAT互联网大厂的后端主流技术栈是啥?
- 杀软EAV/ESS不用“用户名密码”就能更新的方法【各版、6.0.308依然可用】
- 自定义View实践:指南针的实现
- mysql 左连接查询只取右边一条数据_MySQL的左连接查询,只取出最大的一条数据...
- idea2020的Run/Debug Configurations出现叉号
- 割完肉先疗伤(转自:沙牛家书)
- c语言中sbit什么意思,c语言中bit和sbit的区别.doc
- 变电站蓄电池组全在线充放电测试应用案例
- 英语期刊写作-通往国际学术舞台的阶梯第七章答案
- 威信一中2021高考成绩查询,教育实习的调查报告
- Guacamole搭建教程
- python爬虫登录教程_18个网站的Python爬虫登录示例 | 开源项目推荐|python教程|python入门|python教程...
- 二维数组:K13185 点兵点将1
热门文章
- java 类 null_深入理解java中的null“类型”
- 铺铜过孔不要十字_谈谈商周青铜器上圈足的镂孔现象
- ioc spring 上机案例_通过实例解析Spring Ioc项目实现过程
- 【Python科学计算系列】矩阵
- linux macos 界面对比,GNOME 3与Mac OS X 10.7 (Lion)的纵览模式比较
- windows.h有哪些函数
- java json 易用_Java中 Json的使用
- 群晖 上传 源文件不存在_群晖NAS连接百度网盘报错?原因是这样的
- python读取写入文件_Python文件读写保存操作
- 计算机硬盘瓶颈,为何你的电脑卡的飞起,看看是不是遇到存储瓶颈