02 2014 档案

摘要:首先先说一下IComparable和IComparer的区别,前者必须在实体类中实现,后者可以单独出现在一个排序类中,即此类只包含一个compare方法。 Array类使用快速算法对数组中的元素进行排序。sort()方法需要数组中的元素实现IComparable接口,下例演示了一个自定义的排序: class Program { static void Main(string[] args) { Person[] persons ={ new Person{firstName ... 阅读全文
posted @ 2014-02-26 11:56 蚂蚁拉车 阅读(554) 评论(0) 推荐(0)
摘要:类的对象存储在堆中,引用存储在栈里面,这样数据的生存期可以有很大的灵活性,但性能会有一定的损失。因为托管堆的优化,这种性能损失比较小。但是,有时候仅需要一个小的数据结构,此时类提供的功能多于我们需要的功能,出于性能考虑,我们最好用结构。看下面的代码: class Dimensions { public double Length; public double Width; } 假如我们试着在计算机上布置家具,并存储每件家具的尺寸,表面看来使字段变为公共字段会违背编程原则,但关键是我们实际上并不需要类的全部功能。现在有两个数字,把其当作一对来处... 阅读全文
posted @ 2014-02-25 10:56 蚂蚁拉车 阅读(224) 评论(0) 推荐(0)
摘要:有时会思考为什么会成为软件开发者,我的答案是,这项工作让我感到快乐。我也曾没日没夜的玩过游戏,但是那种经历过后,没有快乐,有的只是疲惫和空虚。我曾连续三十小时设计软件和编写代码,但我从中获得的快乐远比同样时间花费在游戏上的要多,而且软件的完成和发布后可在很长时间内给自己带来巨大的满足感。 我喜欢挑战,喜欢解决问题后的喜悦,所以我觉得自己适合软件工程师这个职业。我喜欢跟团队交流,喜欢和比自己优秀的人一起为了达到目标目标而奋斗,所以我努力融入团队。在我的职业发展中,我始终努力让兴趣成为我的老师,向前展望未来的时候学会先倾听自己内心深处的声音,知道自己真正要什么,而不要被一时的机会所蒙蔽,不要... 阅读全文
posted @ 2014-02-24 16:46 蚂蚁拉车 阅读(254) 评论(0) 推荐(0)
摘要:private void button6_MouseMove(object sender, MouseEventArgs e) { button6.ImageAlign = ContentAlignment.MiddleLeft;//鼠标移动到button6时改变图片位置 } private void button6_MouseLeave(object sender, EventArgs e) { button6.ImageAlign = ContentAlignment.MiddleCent... 阅读全文
posted @ 2014-02-21 14:10 蚂蚁拉车 阅读(1013) 评论(0) 推荐(0)
摘要:public partial class Frm_Main : Form { public Frm_Main() { InitializeComponent(); } private void timer1_Tick(object sender, EventArgs e) { this.Opacity += 0.1;//设置窗体的不透明级别 } }嘻嘻 爱生活 爱圆圆 阅读全文
posted @ 2014-02-20 16:39 蚂蚁拉车 阅读(110) 评论(0) 推荐(0)
摘要:public partial class Frm_Main : Form { Bitmap bit;//声明位图对象 public Frm_Main() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { bit = new Bitmap("font.bmp");//从指定的图像初始化Bitmap类对象 bit.MakeTrans... 阅读全文
posted @ 2014-02-20 16:19 蚂蚁拉车 阅读(208) 评论(0) 推荐(0)
摘要:public partial class Frm_Main : Form { public Frm_Main() { InitializeComponent(); } private void Frm_Main_Load(object sender, EventArgs e) { RegistryKey myReg1, myReg2;//声明注册表对象 myReg1 = Registry.CurrentUser;//获取当前用户注册表项 ... 阅读全文
posted @ 2014-02-20 14:39 蚂蚁拉车 阅读(230) 评论(0) 推荐(0)
摘要:class Program { public float maxGongYueShu(int n1, int n2) { int temp = Math.Max(n1, n2);//求两个数的最大值 n2 = Math.Min(n1, n2);//求两个数中的最小值 n1 = temp;//记录临时值 while (n2 != 0) { n1 = n1 > n2 ? n1 : n2;//使n1中的数大于n2中的数 ... 阅读全文
posted @ 2014-02-20 09:50 蚂蚁拉车 阅读(230) 评论(0) 推荐(0)
摘要:namespace Arbor{ /// /// LEFT左子树,RIGHT右子树 /// enum Position { LEFT, RIGHT }; /// /// LINK指向孩子,THREAD指向后继 /// enum Tag { LINK, THREAD }; /// /// 二叉树节点的抽象定义 /// interface IBinNode { bool isLeaf(); object Element { get; set; } IBinNode L... 阅读全文
posted @ 2014-02-19 17:26 蚂蚁拉车 阅读(262) 评论(0) 推荐(0)
摘要:堆栈:namespace StackApply{ public class CStack { //调用链表类 private Clist m_List; public CStack() { //构造函数 m_List = new Clist(); } /// /// 压入堆栈 /// public void Push(int PushValue) { //参数: int Pu... 阅读全文
posted @ 2014-02-19 16:42 蚂蚁拉车 阅读(215) 评论(0) 推荐(0)
摘要:不常用,可以看一下实现原理namespace UnilateralismChainTable{ // 结点类 public class ListNode { public ListNode(int NewValue) { Value = NewValue; } //前一个 public ListNode Previous; // 后一个 public ListNode Next; // 值 public int Value; ... 阅读全文
posted @ 2014-02-19 16:06 蚂蚁拉车 阅读(4954) 评论(1) 推荐(0)
摘要:效果图如下 private void Form1_Load(object sender, EventArgs e) { Graphics Car_Paint = panel1.CreateGraphics();//实例化绘图对象 string Car_Str = "青岛**软件公司";//定义要绘制的动态文字 Character character = new Character();//实例化自定义类对象 character.DynamicEffect(panel1, Car_Str);/... 阅读全文
posted @ 2014-02-19 14:26 蚂蚁拉车 阅读(1551) 评论(0) 推荐(0)
摘要:1、foreach语句C#编译器会把foreach语句转换为IEnumerable接口的方法和属性。1 foreach (Person p in persons)2 {3 Console.WriteLine(p);4 }foreach语句会解析为下面的代码段。调用GetEnumerator()方法,获得数组的一个枚举在while循环中,只要MoveNext()返回true,就一直循环下去用Current属性访问数组中的元素 IEnumerator enumerator = persons. GetEnumerator(); while (enumerator.MoveNext()) { Per 阅读全文
posted @ 2014-02-19 11:11 蚂蚁拉车 阅读(347) 评论(0) 推荐(0)
摘要:private void txtNum1_KeyPress(object sender, KeyPressEventArgs e) { if (!(e.KeyChar = '0') && e.KeyChar != '\r' && e.KeyChar != '\b') { e.Handled = true; } } 阅读全文
posted @ 2014-02-18 17:29 蚂蚁拉车 阅读(221) 评论(0) 推荐(0)
摘要:private void button1_Click(object sender, EventArgs e) { System.Text.RegularExpressions.MatchCollection matches =//使用正则表达式查找重复出现单词的集合 System.Text.RegularExpressions.Regex.Matches(label1.Text, @"\b(?\w+)\s+(\k)\b", System.Text. RegularEx... 阅读全文
posted @ 2014-02-17 16:53 蚂蚁拉车 阅读(1230) 评论(0) 推荐(0)
摘要:private void btn_GetTime_Click(object sender, EventArgs e) { lab_time.Text = DateTime.Now.ToString("d") + "\n" +//使用指定格式的字符串变量格式化日期字符串 DateTime.Now.ToString("D") + "\n" + DateTime.Now.ToString("f") + "\n" + DateTime.Now.T... 阅读全文
posted @ 2014-02-17 15:17 蚂蚁拉车 阅读(311) 评论(0) 推荐(0)
摘要:十进制转其他进制的方法:Convert.ToString(value,format)其他进制转十进制的方法:Convert.ToInt64(value,format)非十进制转非十进制就是先把其转成十进制,然后再转成其他进制,具体效果如下:代码如下:先建一个转换类 public class Transform { internal string TenToBinary(long value) { return Convert.ToString(value, 2); } internal string TenTo... 阅读全文
posted @ 2014-02-17 11:45 蚂蚁拉车 阅读(974) 评论(0) 推荐(0)
摘要:你手上有多少个螺,决定你的性格 小时候就常听说这个类似的说话,今终于发现了,就转载过来了! 十个斗的人和十个簸箕的是上天注定的姻缘,他们要受好几世磨难不能相守,才可以换来下一生缘份,而且呀即使离去也不必再喝孟婆汤,这样就可以生生世世都记着对方,不再分离。 科学分析:十个斗和十个簸箕的人是完全的互补型性格,一个刚一个柔,一个主动一个被动。互相吸引互相拿对方没辙。在一起是十全十美(民间也有这种古老的说法)总之这是最佳组合,在一起会很幸福的。 由于这两种人都是极端性格(其中含有复杂斗纹或者反簸箕纹弧纹的人稍有偏差) 所以单独一个的时候很容易陷入纠结痛苦,但是一旦和另一个极端配合,据相学所言... 阅读全文
posted @ 2014-02-17 09:56 蚂蚁拉车 阅读(760) 评论(0) 推荐(0)
摘要:原理:假设取3位小数1、2.444442、得到0.000553、1+2=2.445004、得到2.445 /// /// 计算double值四舍五入的方法 /// /// 进行四舍五入的数值 /// 保留的小数位 /// 返回四舍五入后的double值 internal double Round(double dbl, int i) { string P_str_dbl = dbl.ToString();//将double数值转换为字符串 strin... 阅读全文
posted @ 2014-02-14 16:32 蚂蚁拉车 阅读(369) 评论(0) 推荐(0)
摘要:private void btn_GetCount_Click(object sender, EventArgs e) { int P_scalar = 0;//定义值类型变量并赋值为0 Regex P_regex = //创建正则表达式对象,用于判断字符是否为汉字 new Regex("^[\u4E00-\u9FA5]{0,}$"); for (int i = 0; i < txt_str.Text.Length; i++)//遍历字符串中每一个字符 { ... 阅读全文
posted @ 2014-02-14 11:40 蚂蚁拉车 阅读(376) 评论(0) 推荐(0)
摘要:主要内容是下面两行代码:取得文本的第一个字母的编码。string P_str_temp = "abc";string P_str = Encoding.GetEncoding("unicode").GetBytes(new char[] { P_str_temp[0] })[0].ToString();具体事件如下: private void btn_ToASCII_Click(object sender, EventArgs e) { if (txt_char.Text != string.Empty)//判断输入是否为空 { ... 阅读全文
posted @ 2014-02-14 10:57 蚂蚁拉车 阅读(719) 评论(0) 推荐(0)
摘要:要点在于按钮的布局和对控件的使用及删除namespace NumberGame{ public partial class Form1 : Form { public Form1() { InitializeComponent(); T_time.Interval = 1; } Random G_random = new Random(); int G_int_num = 0; DateTime G_time_time; /// ... 阅读全文
posted @ 2014-02-14 10:04 蚂蚁拉车 阅读(197) 评论(0) 推荐(0)
摘要:Type type = typeof(System.Int32);//获得int类型的Type对象 foreach (MethodInfo method in type.GetMethods())//遍历string类中定义的所有公共方法 { rtbox_text.AppendText( "方法名称:" + method.Name + Environment.NewLine);//输出方法名称 foreach (ParameterInfo paramet... 阅读全文
posted @ 2014-02-13 16:17 蚂蚁拉车 阅读(305) 评论(0) 推荐(0)
摘要:媒体播放控件(Windows Media Player )的常用属性和方法,并且利用它设计一个简单的媒体应用程序——媒体播放器。该媒体播放器可以播放 wav、avi、mid 和 mp3 等格式的文件。Windows Media Player 控件的引入使得在 Visual C# 2008 环境下制作多媒体应用程序变得非常的简单,只需要编写几行简单的代码,就可以达到播放多媒体文件的目的。Windows Media Player 控件 Windows Media Player 控件主要用于管理多媒体文件的记录与回放,从概念上说,该控件就是一个完整的媒体播放器,它支持 wav、AVI、MIDI .. 阅读全文
posted @ 2014-02-13 15:22 蚂蚁拉车 阅读(984) 评论(0) 推荐(0)
摘要:---------------------------Microsoft Visual Studio---------------------------未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包。此问题可能是由配置更改或安装另一个扩展导致的。可以通过查看文件“C:\Users\用户名\AppData\Roaming\Microsoft\VisualStudio\11.0\ActivityLog.xml”来获取详细信息。是否继续显示此错误消息?---------------------------是(Y 阅读全文
posted @ 2014-02-13 14:51 蚂蚁拉车 阅读(309) 评论(0) 推荐(0)
摘要:一、 体质易变酸的几种行为1、熬夜__体质变酸!晚上1:00以后不睡觉,人体的代谢作用会改由内分泌燃烧,用内分泌燃烧产生的毒素会很多,会使体质变酸。通常熬夜的人得慢性疾病的机率比抽烟或喝酒的人都来得高。所以每天尽量在12:00以前睡觉,不要常熬夜!熬夜时不要吃肉,尽量吃碳水化合物,这样隔天才不至於很累,可把伤害减至最低。2、吃宵夜__体质变酸!凡是晚上8:00再进食就称做宵夜。吃宵夜隔天会疲倦,爬不起床,肝也会受损,因为睡觉时,人体各器官活动力低,处於休息状态,因此食物留在肠子里会变酸、发酵,而产生毒素伤害身体。3、不吃早餐__体质会变酸!台湾人普遍不吃早餐,这是非常不正确的饮食习惯。早餐一定 阅读全文
posted @ 2014-02-13 11:07 蚂蚁拉车 阅读(334) 评论(0) 推荐(0)
摘要:插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。 一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下:从第一个元素开始,该元素可以认为已经被排序取出下一个元素,在已经排序的元素序列中从后向前扫描如果该元素(已排序)大于新元素,将该元素移到下一位置重复步骤3,直到找到已排序的元素小... 阅读全文
posted @ 2014-02-11 15:21 蚂蚁拉车 阅读(226) 评论(0) 推荐(0)
摘要:鸡尾酒排序等于是冒泡排序的轻微变形。不同的地方在于从低到高然后从高到低,而冒泡排序则仅从低到高去比较序列里的每个元素。他可以得到比冒泡排序稍微好一点的效能,原因是冒泡排序只从一个方向进行比对(由低到高),每次循环只移动一个项目。 以序列(2,3,4,5,1)为例,鸡尾酒排序只需要访问一次序列就可以完成排序,但如果使用冒泡排序则需要四次。 但是在乱数序列的状态下,鸡尾酒排序与冒泡排序的效率都很差劲,优点只有观念简单这一点。鸡尾酒排序最糟或是平均所花费的次数都是,但如果序列在一开始已经大部分排序过的话,会接近。c#代码static int[] BubbleCocktailSort(int[]... 阅读全文
posted @ 2014-02-11 11:31 蚂蚁拉车 阅读(540) 评论(0) 推荐(0)
摘要:冒泡排序(Bubble Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 冒泡排序对个项目需要O()的比较次数,且可以原地排序。尽管这个算法是最简单了解和实作的排序算法之一,但它对于少数元素之外的数列排序是很没有效率的。 冒泡排序是与插入排序拥有相等的执行时间,但是两种法在需要的交换次数却很大地不同。在最坏的情况,冒泡排序需要次交换,而插入排序只要最多... 阅读全文
posted @ 2014-02-11 10:48 蚂蚁拉车 阅读(332) 评论(0) 推荐(0)
摘要:排序算法是我们编程中遇到的最多的算法。目前主流的算法有8种。 平均时间复杂度从高到低依次是: 冒泡排序(o(n2)),选择排序(o(n2)),插入排序(o(n2)),堆排序(o(nlogn)), 归并排序(o(nlogn)),快速排序(o(nlogn)), 希尔排序(o(n1.25)),基数排序(o(n)) 这些平均时间复杂度是参照维基百科排序算法罗列的。 是计算的理论平均值,并不意味着你的代码实现能达到这样的程度。 例如希尔排序,时间复杂度是由选择的步长决定的。基数排序时间复杂度最小, 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。... 阅读全文
posted @ 2014-02-11 10:16 蚂蚁拉车 阅读(249) 评论(0) 推荐(0)
摘要:Queue队列就是先进先出。它并没有实现 IList,ICollection。所以它不能按索引访问元素,不能使用Add和Remove。下面是 Queue的一些方法和属性 Enqueue():在队列的末端添加元素 Dequeue():在队列的头部读取和删除一个元素,注意,这里读取元素的同时也删除了这个元素。如果队列中不再有任何元素。就抛出异常 Peek():在队列的头读取一个元素,但是不删除它 Count:返回队列中的元素个数 TrimExcess():重新设置队列的容量,因为调用Dequeue方法读取删除元素后不会重新设置队列的容量。 Contains():确定某个元素是否在队... 阅读全文
posted @ 2014-02-08 16:38 蚂蚁拉车 阅读(64024) 评论(2) 推荐(2)