冒泡排序

本文详细介绍了冒泡排序的基本原理及其具体实现过程,并通过一个示例数组的排序过程展示了冒泡排序的工作机制。此外,还提供了一个使用C#语言实现冒泡排序的示例代码。
一、冒泡排序:就是将一个数组中的元素按照从大到小或者从小到大的顺序进行排列。
int[] nums={9,8,7,6,5,4,3,2,1,0}; //排序后得:0 1 2 3 4 5 6 7 8 9 第一趟比较:8 7 6 5 4 3 2 1 0 9 交换了9次 i=0 j=nums.Length-1-i 第二趟比较:7 6 5 4 3 2 1 0 8 9 交换了8次 i=1 j=nums.Length-1-i 第三趟比较:6 5 4 3 2 1 0 7 8 9 交换了7次 i=2 j=nums.Length-1-i 第四趟比较:5 4 3 2 1 0 6 7 8 9 交换了6次 i=3 j=nums.Length-1-i 第五趟比较:4 3 2 1 0 5 6 7 8 9 交换了5次 第六趟比较:3 2 1 0 4 5 6 7 8 9 交换了4次 第七趟比较:2 1 0 3 4 5 6 7 8 9 交换了3次 第八趟比较:1 0 2 3 4 5 6 7 8 9 交换了2次 第九趟比较:0 1 2 3 4 5 6 7 8 9 交换了1次
核心算法: for(int i=0;i<nums.Length-1;i++) //决定一共比较多少趟 { for(int j=0;j<nums.Length-1-i;j++) //决定每趟交换多少次 { if(nums[j]>nums[j+1])//交换条件 { int temp=nums[j]; nums[j]=nums[j+1]; nums[j+1]=temp; } } }


二、小练习

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _Test
{
    class Program
    {
        static void Main(string[] args)
        {
            //请通过冒泡排序法对整数数组{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }实现升序排序。
            int[] nums = { 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 };
            Change(nums);
        //便利输出数组 for (int i = 0; i < nums.Length; i++) { Console.WriteLine(nums[i]); } Console.ReadKey(); }
     //冒泡排序方法 public static void Change(int[] nums) { for (int i = 0; i < nums.Length - 1; i++) { for (int j = 0; j < nums.Length - 1 - i; j++) { if (nums[j] > nums[j + 1]) { int temp = nums[j]; nums[j] = nums[j + 1]; nums[j + 1] = temp; } } } } } }

 三、请自主实现降序排序

 

转载于:https://www.cnblogs.com/hao-1234-1234/p/6105074.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值