摘要: 冒泡排序,跟选择排序最容易混淆:冒泡排序原理根据泡泡从第一个数开始,往上浮动,如果比第二个大或者小,就向上浮动或者不浮动。冒泡排序就是相邻的两个数进行比较,然后根据判断交换位置。View Code static void Main(string[] args) { int[] numList = new int[] { 4, 3, 5, 6,7,9,10,8 }; BubbleSortList(numList); foreach (var num in numList) ... 阅读全文
posted @ 2013-04-27 23:50 Binyao 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 好久没有看算法了,今天想想选择排序(唉,跟冒泡排序搞混了),写了半个小时才写出来,人真的笨了。唉,忘记了!下次面试别人的时候,可以考考。选择排序第一轮 找出最大或者最小的数,放到第一个位置。第二轮 找出除第一个数以外的 最大或者最小的数,放到第二个位置。第三轮 找出除第一个,第二个数以外的 最大或者最小的数,放到第三个位置。以此类推!这样,共整个数组的长度*整个数组的长度次循环后,得到排序好的数组View Code static void Main(string[] args) { int[] numList = new int[] { 4, 3, 5, 6... 阅读全文
posted @ 2013-04-27 23:10 Binyao 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 求 1-2+3-4+...m 的值?View Code static void Main(string[] args) { int result = Sum(5); Console.WriteLine(result.ToString()); } public static int Sum(int num) { if (num.Equals(0) || num.Equals(1)) { return num; ... 阅读全文
posted @ 2013-04-27 22:26 Binyao 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 启动一个线程是调用start()方法,new一个ThreadStart class, 然后,把ThradStart class对象传给Thread类,Thread类start()View Code public class ThreadWork { public static void DoWork() { for (int i = 0; i < 5; i++) { Console.WriteLine("Working thread..{0}", i); ... 阅读全文
posted @ 2013-04-27 22:10 Binyao 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 基本简介观察者模式(Observer)完美的将观察者和被观察的对象分离开。举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上。面向对象设计的一个原则是:系统中的每个类将重点放在某一个功能上,而不是其他方面。一个对象只做一件事情,并且将... 阅读全文
posted @ 2013-04-27 21:54 Binyao 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 基本简介从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。实现方式简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。简单工厂模式的UML类图: 该模式中包含的角色及其职责:工厂(Creator)角色---简单工厂类简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被 阅读全文
posted @ 2013-04-27 21:51 Binyao 阅读(461) 评论(1) 推荐(0) 编辑