常用算法贴(C#)
文章平均质量分 88
收集并分享日常编程中经常使用到的数据结构和算法,并用C#语言来对它们进行实现。
Jeff Xiong
Micrsoft Dynamics CRM MVP,优快云博客专家
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
程序员考试涉及的排序算法
今年的程序员就快开考咯.总结下几个常用的排序方法.都是通过自己的理解来写的代码.有些地方可能不那么精练,但我想精练的代码并不一定适合学习算法....(小鸟的理解).#include "stdio.h" /*1直接插入排序2冒泡排序3选择排序4希尔排序5快速排序6堆排序7归并排序*/void Insert_Sort(int data[],int n){原创 2008-12-17 22:44:00 · 2251 阅读 · 1 评论 -
读书笔记:C#高级编程&.net 3.0(部分一)
总结一:第一部分c#语言这章共有12小节分别为:1.net体系结构2.c#基本语法3.对象和类型4.继承5.数组6.运算符和强制类型转换7.委托和事件8.字符串和正则表达式9.泛型10.集合11.内存管理和指针12.自定义特性和反射内容到是不少,分的也很细腻.一章学下来也让我这只小菜鸟对c#语言有了感性的认识.下面就上面12节涉及到的知识做个小结.例子都是在控制台应用程序下编写的..net体系结构原创 2008-08-02 18:47:00 · 2670 阅读 · 0 评论 -
反射备忘
项目1using System;using System.Collections.Generic;using System.Text;namespace SupportsWhatsNew{ [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true, In原创 2009-10-25 17:52:00 · 1522 阅读 · 0 评论 -
泛型备忘
using System;using System.Collections;using System.Collections.Generic;using System.Text;namespace chapter9{ public class LinkedListNode { private object value;原创 2009-10-27 20:58:00 · 1448 阅读 · 0 评论 -
.net 中的string.format()的格式表
C#格式化数值结果表String.Format格式说明2009-08-31 20:35字符说明示例输出C货币string.Format("{0:C3}", 2)$2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E+0011.20E+001G常规string.Format("{0:G}", 2)2N用分号隔开的数字string.Format("{0:N原创 2009-10-27 21:11:00 · 1846 阅读 · 0 评论 -
.net操作文件,注册表,ACL
文件操作using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;原创 2009-11-16 19:58:00 · 1686 阅读 · 0 评论 -
ADO.NET连接数据库的命令格式
ADO.NET 连接 ACCESS数据库的连接字符 provider=microsoft.jet.oledb.4.0;Data Source=ADO.NET 连接 MS SQL SERVER数据库的连接字符 Server=*;Initial Catalog='数据库名';{uid='';pwd=''|Integrated Security='SSPI'}ADO.NET连接visual studio原创 2010-04-05 14:01:00 · 1685 阅读 · 0 评论 -
实现一个可以动态改变的N层导航树
原理: 将导航树信息存储在web.config文件中,程序获取存储在web.config中导航树的信息并生成相应的导航结构。 代码:using System;using System.Collections;using System.Collections.Generic;/// /// Category 的摘要说明/// public class Cate原创 2010-12-14 22:33:00 · 1704 阅读 · 0 评论 -
ADO.NET中不常用的功能
ADO.NET中不常用的功能测试数据: SqlConnection conn = new SqlConnection("Data Source=192.168.6.4;Initial Catalog=chapter30;uid=sa;pwd=123456;"); SqlCommand cmd = new SqlCommand(); string sqlText = @"原创 2012-03-07 14:26:09 · 2130 阅读 · 0 评论 -
提高你的数据库编程效率:Microsoft CLR Via Sql Server
你还在为数据库编程而抓狂吗?那些恶心的脚本拼接,低效的脚本调试的日子将会与我们越来越远啦。现在我们能用支持.NET的语言来开发数据库中的对象,如:存储过程,函数,触发器,集合函数已及复杂的类型。看到这些你还能淡定吗?哈哈,不仅仅是这些。那些能被.NET支持的第三方扩展通过该技术统统都能应用在数据库编程上,如:正则表达式,.NET庞大的加密解密库,以及各种.NET集成的排序和搜索算法。 下面原创 2012-03-12 12:52:05 · 4433 阅读 · 6 评论 -
让正则表达式也加入你的Transaction-SQL吧!(CLR SQL SERVER)
试过Transaction-Sql编程的哥们应该都觉的这东西太恶心了,除了IDE,最恶心得还数编程中涉及的字符串拼接问题。想象一下:在一个巨复杂的业务逻辑中,里面充满了while,if,case。你必须处理好所有的情况并按某一规则来拼接字符串。这些字符串可能是Sql,也可能是结果,但不管是什么都是我们的噩梦。 正则表达式是啥相信就不要我介绍了,处理文本的利器呀。虽然Sql Server也支持正原创 2012-03-14 12:36:47 · 4530 阅读 · 0 评论 -
.NET下的加密解密大全(3):非对称加密
本博文列出了.NET下常用的非对称加密算法,并将它们制作成小DEMO,希望能对大家有所帮助。RSA /* 作者:GhostBear 博客地址:Http://blog.youkuaiyun.com/ghostbear */ static string EnRSA(string data,string publickey)原创 2012-03-17 01:13:19 · 10449 阅读 · 9 评论 -
.NET下的加密解密大全(2):对称加密
本博文列出了.NET下常用的对称加密算法,并将它们制作成小DEMO,希望能对大家有所帮助。 公共代码 static byte[] CreateKey(int num) { byte[] result = new byte[num]; Random rand = new Random();原创 2012-03-16 00:12:05 · 8740 阅读 · 10 评论 -
.NET下的加密解密大全(1):哈希加密
.NET有丰富的加密解密API库供我们使用,本博文总结了.NET下的Hash散列算法,并制作成简单的DEMO,希望能对大家有所帮助。 MD5/* 作者:GhostBear * 博客地址:Http://blog.youkuaiyun.com/ghostbera */using System;using System.Collections.Generic;using原创 2012-03-15 09:12:49 · 5660 阅读 · 6 评论 -
反射备忘2
定义代码using System;using System.Collections.Generic;using System.Text;namespace CSharp语法复习{ [AttributeUsage(AttributeTargets.All,AllowMultiple=true,Inherited=true)] public class Memo原创 2010-12-14 22:00:00 · 1349 阅读 · 0 评论 -
Linq to Object
Linq to ObjectLinq简介:Linq(集成查询语言),好东西啊,又是微软退出的一款重量级的软件设计解决方案。推出至今已有2年多了,刚推出的时候没多大关注它,最近才开始学习它。通过它来写软件能明显提高软件的开发效率。相恨见晚啊!!!Linq这个语言体系主要为4大部分:u Linq to Objectu Linq to Xmlu Linq to Ado.Netu原创 2011-02-18 11:47:00 · 2940 阅读 · 1 评论 -
Linq To Xml
Linq To XMl啥是Linq To Xml呢?Linq To Xml就是通过Linq语句来快速检索Xml树或Xml文件,并从中获取相应的记录或对获取的记录进行相应的操作。用Linq来检索Xml文件比Xpath好用,用Linq来操作Xml文件比DOM好用。Linq To Xml 说白了就是Xpath和DOM的抽象,语法简单但功能却不简单。 废话不多说呀,咱来写几个案例。 案例1如何使用Li原创 2011-02-21 23:36:00 · 1668 阅读 · 0 评论 -
Linq To Ado.net
Linq To Ado.netLinq不但能对Object对象进行操作,也能对Xml文件进行操作,还能对数据库中的记录项进行操作。Linq对数据库中的记录进行操作分开分为两类:Linq To Ado.netLinq To Sql Linq To Ado.net主要是通过在DataSet上进行操作来达到处理数据记录的效果。Linq To Sql则是直接对数据库中存储的记录进行操作。下面咱来写几个例子原创 2011-02-23 13:34:00 · 1795 阅读 · 0 评论 -
Linq To Sql
Linq To SqlLinq To Sql是Linq技术的核心内容,通过它能做到很多意想不到的事情。接下来咱就一一将这些有意思的把戏给写出来。接下来咱们的案例都将是针对下面这3张表展开的,这里我假设这3张表都存放在数据库Student中。Student(ID long primary,Name NVarChar(10),Age tinyint)Teacher(ID long primary,Na原创 2011-02-23 13:36:00 · 1699 阅读 · 0 评论 -
Linq中的高级用法
实体Commodity: class Commodity { public int Id { get; set; } public string Name { get; set; } public string Price { get; set; } public int Num {原创 2012-02-24 17:11:22 · 3989 阅读 · 0 评论 -
.Net CLR 事务
.Net CLR 事务.Net CLR 事务:事务的执行不是通过在数据库书写脚本完成的。而是通过c#,vb.net这些开发语言在应用层进行书写。运用该技术来编写事务程序会很轻松,较少了开发工作量。 传统事务 SqlConnection conn = new SqlConnection("Data Source=192.168.1.87;Initial Catalog=chapter23;Ui原创 2012-03-01 12:03:13 · 2519 阅读 · 0 评论 -
C#中不常用的数据结构
C#中不常用的数据结构锯齿数组 ////从1到9打印出一个三角状的图像 int[][] table = new int[9][]; for (int i = 0; i <= table.GetUpperBound(0); i++) { table[i原创 2012-03-04 14:17:51 · 3350 阅读 · 0 评论 -
c#中的高级语法(.Net4)
高级语法 委托委托就是指针函数,委托的定义与类的属性定义类似都必须在类的方法体进行。 委托的定义:class Program { //定义委托:委托不能在方法体内定义。 public delegate string PrintSomething(string data); static void Main(st原创 2012-03-05 11:37:56 · 4569 阅读 · 0 评论 -
.Net插件编程模型:MEF和MAF
.Net插件编程模型:MEF和MAF MEF和MAF都是C#下的插件编程框架,我们通过它们只需简单的配置下源代码就能轻松的实现插件编程概念,设计出可扩展的程序。这真是件美妙的事情! MEF(Managed Extensibility Framework) MEF的工作原理大概是这样的:首先定义一个接口,用这个接口来约束插件需要具备的职责;然后在实现接口的程序方法原创 2012-03-08 10:10:44 · 13889 阅读 · 4 评论 -
.Net中处理XML的常用API
.Net中处理XML的常用API .Net对XML提供了丰富的API,但大多数都在日常开发中涉及不到。先总结下一些使用频繁的API与大家分享。测试数据bookstore.xml 十万个为什么 30 为什么先生 火星出版社 2012年12月12日 客官不要嘛原创 2012-03-09 11:41:43 · 4801 阅读 · 0 评论 -
c#中的线程,任务,并发编程
线程,任务,并发编程异步委托异步调用有返回值的委托和没返回值的委托。 异步调用无返回值的委托 PrintSomething printFruit = (d) => { Thread.Sleep(3000); Console.WriteLine("\n\ryou input this fruit:"+d); };原创 2012-03-10 01:14:09 · 9326 阅读 · 0 评论 -
C#中的线程同步及线程用到的锁对象
线程同步及线程用到的锁对象 如果程序涉及到多个线程协同完成某项任务,那么你将会面对线程同步的问题。.Net为这类为题提供了很好的解决方案,我们只需要书写少量的代码就能避免线程出现死锁。线程同步辅助类 class ThreadSync { public long data1; public long data2;原创 2012-03-11 10:30:37 · 2753 阅读 · 0 评论 -
C#数据处理之独立存储器,映射内存
C#中的独立存储器,映射内存使用方法 独立存储器和映射内存都是用来处理程序数据问题。独立存储器可以用来临时保存程序的一些不重要数据,映射内存文件则可以用来解决程序数据读取的问题。当程序在运行过程中需要加载大量的外部数据时,用它来做一个数据缓存区域将是一个不错的选择。 独立存储器static void UserIsolationFile(){ //this file wa原创 2012-03-09 10:33:59 · 2890 阅读 · 0 评论 -
常用算法帖(C#): Dynamic Object
Dynamic Object包含在.Net4.0中,该对象可以允许我们在运行时中改变它的类型,有了这种万金油还有什么问题是我们不能解决的呢?我们来看看它的几个使用例子吧:Var类型和Dynamic类型 public static void TestDynamicObject() { //var object and dynamic obj原创 2013-04-15 14:15:22 · 3176 阅读 · 2 评论 -
常用算法帖(C#): 字典
.Net(4.0)为我们提供了如下类型的字典结构:Dictionary, SortedDictionary, Lookup。这些类型都支持范型,它们的工作原理基本一致,都是提供如下功能:接收健返回值。它们之间的不同处为: SortedDictionar:有序字典,插入字典的元素都按升序进行了排列。 Lookup:一键可以对应多值。 在字典的数据结构中,真实充当键的不是当前对原创 2013-04-07 17:12:51 · 3307 阅读 · 0 评论 -
常用算法帖(C#): 并发集合
微软对C#(4.0)的框架添加了全新的并发编程框架,现在我们也能用C#开发支持并发概念的程序的。在并发编程中最让人烦恼的应该就是如何数据同步:避免脏读和脏写,当然我们可以通过Lock技术来实现,也可以使用微软提供给我们的并发集合,这些集合都提供了TryDo方法。用它们对数据的读/写操作能在TryDo返回True的情况下执行。我们来看看它们吧: IProducerConsumerCollection原创 2013-03-29 16:16:56 · 3419 阅读 · 0 评论 -
常用算法帖(C#): 集合
集合类型的数据结构在日常编程中占重要比例,大多数的业务需求都需要用到集合类型的数据结构。.NET平台为我们提供了种类繁多的集合类型的数据结构,我们只需要简单的调用相应的API就能完成对零散数据的整理。本文收集了目前.NET平台下为我们提供的所有集合类型,并提供一个小例子。IEnumerablenamespace System.Collections.Generic{ public i原创 2013-03-25 14:34:35 · 2488 阅读 · 0 评论 -
常用算法帖(C#): 数组
C#对数组概念进行了彻底的面向对象化,很大程度上降低了我们对数组结构的使用难度,并且它已经支持了.Net平台的垃圾收集机制。随着C#版本的不断更新,从数组中派生出的新数据结构也日益增加。按照28原理,我们只需要使用其中的20%就能解决80%的问题。但为了做到极致,我们还是需要了解下它们。本文总结到C#(4.0)为止的一些与数组相关的数据结构以及它们的用法。基本数组 strin原创 2013-03-21 17:26:31 · 2603 阅读 · 1 评论
分享