using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class 冒泡排序 { //首先要了解冒泡排序,其实很简单就是索引前面的跟后面的比较,如果比后面的大2个值的位置就进行调换 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(); //冒泡算法中第一个参数是对应Employees数组信息,第二个参数是委托 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; } } } } } }
您还没有登录,请您登录后再发表评论
本篇文章是对用委托处理排序进行了详细的分析介绍,需要的朋友参考下
答:据说相当于函数指针,定义了委托就可以在不调用原方法名称的情况下调用那个方法. msdn2005中是这样解释的: 委托具有以下特点: 委托类似于 C++ 函数指针,但它是类型安全的。 委托允许将方法作为参数进行传递。 ...
3.8不使用委托实现Observer模式 3.8.1设计思想概述 3.8.2 Observer模式的接口定义 3.8.3 Observer模式的实现 3.8.4推模式和拉模式 3.8.5推模式和拉模式的区别 3.9本章小结 第4章对象的筛选和排序 4.1对象的...
6.如果在一个b/s结构的系统中需要传递变量值,但是又不能使用session、cookie、application,您有几种方法进行处理? 7.请编程遍历页面上所有textbox控件并给它赋值为string.empty? 8.请编程实现一个冒泡排序...
实例14 委托 实例15 属性 实例16 异常处理 实例17 链表 实例18 回文数 实例19 汉诺塔 实例20 冒泡排序 实例21 插入排序 小结 第2章 界面编程 实例22 Hello Form 实例23 主菜单 ...
18.3.4 用AggregateException处理Task上的未处理异常 525 18.4 取消任务 530 18.4.1 Task.Run()是Task.Factory.StartNew()的简化形式 532 18.4.2 长时间运行的任务 532 18.4.3 对任务进行资源...
4.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理? 答 : this.Server.Transfer 5.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty? ...
编辑个人资料,图片可拖拽排序。有点像可拖拽的gridView,但是会更流畅。这个demo是探探的个人资料编辑页面,受网上一位朋友的委托,该库模仿了其拖动效果。 探探的安卓工程师,应该特别牛逼吧。因为最初时,这种...
6.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理? 答 : this.Server.Transfer 7.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty? 答...
第三篇是应用技术篇,主要介绍的是异常处理、文件和流、委托、事件、Lambda表达式、命名空间、预处理器、程序集、运行时类型标识、反射、特性、泛型、LINQ和数据库开发等。 =======================================...
用Hadoop产生图表 Track Statistics程序 总结 Hadoop和Hive在Facebook的应用 概要介绍 Hadoop a Facebook 假想的使用情况案例 Hive 问题与未来工作计划 Nutch 搜索引擎 背景介绍 数据结构 Nutch系统利用Hadoop进行...
27.1 为何使用并行处理来执行多任务处理 550 27.2 在桌面应用程序中实现多任务处理 551 27.2.1 任务、线程和线程池 552 27.2.2 创建、运行和控制任务 553 27.2.3 使用task类实现并行处理 557 27.2.4 使用...
用Hadoop产生图表 Track Statistics程序 总结 Hadoop和Hive在Facebook的应用 概要介绍 Hadoop a Facebook 假想的使用情况案例 Hive 问题与未来工作计划 Nutch 搜索引擎 背景介绍 数据结构 ...
关于ASP.Net中的时间处理.txt 关于上下文.doc 创建可分页、可排序的 DataGrid.doc 创建用于 ASP.NET 的分页程序控件.doc 创建用于ASP.NET的分页控件.txt 利用 ASP.NET 创建多页自定义报表.doc 利用属性扩展元...
相关推荐
本篇文章是对用委托处理排序进行了详细的分析介绍,需要的朋友参考下
答:据说相当于函数指针,定义了委托就可以在不调用原方法名称的情况下调用那个方法. msdn2005中是这样解释的: 委托具有以下特点: 委托类似于 C++ 函数指针,但它是类型安全的。 委托允许将方法作为参数进行传递。 ...
3.8不使用委托实现Observer模式 3.8.1设计思想概述 3.8.2 Observer模式的接口定义 3.8.3 Observer模式的实现 3.8.4推模式和拉模式 3.8.5推模式和拉模式的区别 3.9本章小结 第4章对象的筛选和排序 4.1对象的...
6.如果在一个b/s结构的系统中需要传递变量值,但是又不能使用session、cookie、application,您有几种方法进行处理? 7.请编程遍历页面上所有textbox控件并给它赋值为string.empty? 8.请编程实现一个冒泡排序...
实例14 委托 实例15 属性 实例16 异常处理 实例17 链表 实例18 回文数 实例19 汉诺塔 实例20 冒泡排序 实例21 插入排序 小结 第2章 界面编程 实例22 Hello Form 实例23 主菜单 ...
实例14 委托 实例15 属性 实例16 异常处理 实例17 链表 实例18 回文数 实例19 汉诺塔 实例20 冒泡排序 实例21 插入排序 小结 第2章 界面编程 实例22 Hello Form 实例23 主菜单 ...
18.3.4 用AggregateException处理Task上的未处理异常 525 18.4 取消任务 530 18.4.1 Task.Run()是Task.Factory.StartNew()的简化形式 532 18.4.2 长时间运行的任务 532 18.4.3 对任务进行资源...
4.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理? 答 : this.Server.Transfer 5.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty? ...
编辑个人资料,图片可拖拽排序。有点像可拖拽的gridView,但是会更流畅。这个demo是探探的个人资料编辑页面,受网上一位朋友的委托,该库模仿了其拖动效果。 探探的安卓工程师,应该特别牛逼吧。因为最初时,这种...
6.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理? 答 : this.Server.Transfer 7.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty? 答...
第三篇是应用技术篇,主要介绍的是异常处理、文件和流、委托、事件、Lambda表达式、命名空间、预处理器、程序集、运行时类型标识、反射、特性、泛型、LINQ和数据库开发等。 =======================================...
用Hadoop产生图表 Track Statistics程序 总结 Hadoop和Hive在Facebook的应用 概要介绍 Hadoop a Facebook 假想的使用情况案例 Hive 问题与未来工作计划 Nutch 搜索引擎 背景介绍 数据结构 Nutch系统利用Hadoop进行...
27.1 为何使用并行处理来执行多任务处理 550 27.2 在桌面应用程序中实现多任务处理 551 27.2.1 任务、线程和线程池 552 27.2.2 创建、运行和控制任务 553 27.2.3 使用task类实现并行处理 557 27.2.4 使用...
用Hadoop产生图表 Track Statistics程序 总结 Hadoop和Hive在Facebook的应用 概要介绍 Hadoop a Facebook 假想的使用情况案例 Hive 问题与未来工作计划 Nutch 搜索引擎 背景介绍 数据结构 ...
关于ASP.Net中的时间处理.txt 关于上下文.doc 创建可分页、可排序的 DataGrid.doc 创建用于 ASP.NET 的分页程序控件.doc 创建用于ASP.NET的分页控件.txt 利用 ASP.NET 创建多页自定义报表.doc 利用属性扩展元...