冒泡系列

原理就不详细介绍了,百度很多。

C#代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hello
{
    class Program
    {
        static void Main(string[] args)
        {
            //编写一个冒泡序列对一个数组中的10个数值大小进行有小到大的排序
            int[] nums = new int[10];
            int x;
            bool yes;
            string str = "";
            Random r = new Random();

            for(int i=0;i<=9;i++)
            { //产生10个随机数字的一个数组
                do
                {
                    x = r.Next(10, 100);  //返回的是10-100之间的整数
                    yes = false;
                    for (int j = 0; j <= i - 1; j++)
                    { //用来保证随机产生的数组中的值没有重复的数字
                        if (x == nums[j]) yes = true;

                        break;
                    }
                } while (yes==true);
                nums[i] = x;
                str = str + (nums[i].ToString()+" ");
            }
            Console.WriteLine("随机产生的10个数值为:{0}",str.Trim());

            int temp;
            str = "";
            for(int i=0;i<=8;i++)
            {   //冒泡序列核心算法
                for(int j=0;j<=8-i;j++)
                {
                    if(nums[j]>nums[j+1])
                    {
                        temp = nums[j];
                        nums[j] = nums[j+1];
                        nums[j + 1] = temp;
                    }
                }
            }

            for(int i=0;i<=9;i++)
            {
                str=str+ (nums[i].ToString() + " ");
            }
            Console.WriteLine("经过排序后的10个整数为:{0}", str.Trim());
            Console.Read();
        }
    }
}