欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

探討如何用委托處理排序

 更新時間:2013年06月08日 12:02:10   作者:  
本篇文章是對用委托處理排序進行了詳細的分析介紹,需要的朋友參考下

復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    class 冒泡排序
    {
        //首先要了解冒泡排序,其實很簡單就是索引前面的跟后面的比較,如果比后面的大2個值的位置就進行調(diào)換
        static void Main()
        {
            int[] str ={ 0, 14, 3, 6, 1, 30, 10, 9, 28 };
            for (int i = 0; i < str.Length; i++)
            {
                for (int j = i + 1; j < str.Length; j++)
                {
                    if (str[j] < str[i])
                    {
                        int index = str[i];
                        str[i] = str[j];
                        str[j] = index;
                    }
                }
            }
            for (int m = 0; m < str.Length; m++)
            {
                Console.WriteLine(str[m]);
            }
        }
    }
}


復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    public delegate bool DelegateTest(object obj1, object obj2);
    class Class1
    {
        static void Main()
        {
            Employee[] Employees =
              {
                  new Employee("huguo",1000000),
                  new Employee("lili",20000),
                  new Employee("lulu",30000),
                  new Employee("xixi",50000),
                  new Employee("jianjian",10000),
                  new Employee("yoyo",9000)
              };
            //委托DelegateTest代理的方法是Greate
            DelegateTest MyTest = new DelegateTest(Employee.Greate);
            Sorter MySort = new Sorter();
            //冒泡算法中第一個參數(shù)是對應Employees數(shù)組信息,第二個參數(shù)是委托
            MySort.Sort(Employees, MyTest);
            for (int m = 0; m < Employees.Length; m++)
            {
                Console.WriteLine(Employees[m].ToString());
            }
        }
    }
    class Employee
    {
        public string Name;
        public int Salary;
        public Employee(string Name, int Salary)
        {
            this.Name = Name;
            this.Salary = Salary;
        }
        //用override重寫string方法
        public override string ToString()
        {
            return string.Format(Name + ",{0:C},", Salary);
        }
        //定義一個方法,如果obj2傳過來的 Salary大于obj1就返回true;
        public static bool Greate(object obj1, object obj2)
        {
            Employee Employee1 = (Employee)obj1;
            Employee Employee2 = (Employee)obj2;
            return (Employee2.Salary > Employee1.Salary) ? true : false;
        }
    }
    class Sorter
    {
        public void Sort(object[] ArrayObj, DelegateTest Test)
        {
            //下面就是冒泡算法啦
            for (int i = 0; i < ArrayObj.Length; i++)
            {
                for (int j = i + 1; j < ArrayObj.Length; j++)
                {
                    if (Test(ArrayObj[j], ArrayObj[i]))
                    {
                        object Temp = ArrayObj[i];
                        ArrayObj[i] = ArrayObj[j];
                        ArrayObj[j] = Temp;
                    }
                }
            }
        }
    }

}


相關文章

  • C#實現(xiàn)的簡單驗證碼識別實例

    C#實現(xiàn)的簡單驗證碼識別實例

    這篇文章主要介紹了C#實現(xiàn)的簡單驗證碼識別實例,只適應一些簡單的驗證碼,需要的朋友可以參考下
    2014-06-06
  • C#?彈出窗口show()和showdialog()的兩種方式

    C#?彈出窗口show()和showdialog()的兩種方式

    本文主要介紹了C#?彈出窗口show()和showdialog()的兩種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • WinForm調(diào)用百度地圖接口用法示例

    WinForm調(diào)用百度地圖接口用法示例

    這篇文章主要介紹了WinForm調(diào)用百度地圖接口用法,結合具體實例形式簡單分析了WinForm WebBrower控件與前端百度接口交互的相關操作技巧,需要的朋友可以參考下
    2017-06-06
  • c#操作xml文件示例

    c#操作xml文件示例

    對于XML讀寫操作,項目中經(jīng)常要用到,之前木有好好總結過,例如LINQ TO XML也用過,這次無意發(fā)現(xiàn)XPATH對于XML的查詢極為方便,索性把XML的操作總結以便后續(xù)方便使用
    2014-03-03
  • C#使用Json.Net對JSON與對象的序列化與反序列化

    C#使用Json.Net對JSON與對象的序列化與反序列化

    這篇文章介紹了Json.Net對JSON與對象的序列化與反序列化,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • C#不重復輸出一個數(shù)組中所有元素的方法

    C#不重復輸出一個數(shù)組中所有元素的方法

    這篇文章主要介紹了C#不重復輸出一個數(shù)組中所有元素的方法,涉及C#針對數(shù)組的遍歷、校驗及排序等操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • C#基于Socket實現(xiàn)多人聊天功能

    C#基于Socket實現(xiàn)多人聊天功能

    這篇文章主要為大家詳細介紹了C#基于Socket實現(xiàn)多人聊天功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 如何使用C#修改本地Windows系統(tǒng)時間

    如何使用C#修改本地Windows系統(tǒng)時間

    這篇文章主要介紹了如何使用C#修改本地Windows系統(tǒng)時間,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-01-01
  • C#實現(xiàn)屏幕抓圖并保存的示例代碼

    C#實現(xiàn)屏幕抓圖并保存的示例代碼

    這篇文章主要為大家詳細介紹了如何利用C#實現(xiàn)屏幕抓圖并保存的功能,文中的示例代碼講解詳細,對我們學習C#有一定的幫助,感興趣的小伙伴可以了解一下
    2022-12-12
  • C#文件合并的方法

    C#文件合并的方法

    這篇文章主要介紹了C#文件合并的方法,實例分析了C#基于FileStream操作文件合并的相關技巧,需要的朋友可以參考下
    2015-07-07

最新評論