C# 一维数组 冒泡排序

 假设有个三个杯子    一个杯子中有一个紫色的乒乓球  一个没有  一个有红色乒乓球    杯子不能动  

怎么把紫色和红色的调换呢   

主要是先把紫色的放到空的杯子   在把红的放到紫色原来的杯子   再把紫色放到红色原来的杯子

 int []a=new int[3]{1,5,7}

 把 1和7 的位置调换就是

int b=a[0];

a[0]=a[2];

a[2]=b;

有一些数字  放到一块   没有顺序 没有大小  那么怎排列起来呢

先对比大小  假设要从大到小排序的话  先把第一个数字和后面的比较   找到第一个比这个数组大的  位置调换  在把这调换的数字和后面一次比较调换  这样第一个数字是最大数字

再第二个以此比较调换   后面的都是如此

比如:

string[] ss = new string[5]{"aaa","a","aa","aaaaa","aaaa"};
长度从大到小打印出来,从小到大打印出来

            string[] ss = new string[5] { "aaa", "a", "aa", "aaaaa", "aaaa" };
            //长度从大到小打印出来,从小到大打印出来
            for (int i = 0; i < ss.Length; i++)
            {
                for (int j = i + 1; j < ss.Length; j++)//长度比较大小
                {
                    if (ss[i].Length < ss[j].Length)//如果第一段长度小于第二段长度
                    {
                        string b = ss[i];   // 那么位置调换过来
                        ss[i] = ss[j];
                        ss[j] = b;
                    }
                }
                Console.WriteLine(ss[i]);
            }
            Console.ReadLine();

原文地址:https://www.cnblogs.com/zhangwei99com/p/6485529.html