首 页IT知识库翔宇问吧收藏本站
当前位置:翔宇亭IT乐园IT知识库C#专区算法设计
知识标题关闭所有内容预览 | 展开所有内容预览
  • C#中生成随机不重复数列的算法 [内容预览] 41 | 2017-03-24
    给定一个正整数n,需要输出一个长度为n的数组,数组元素是随机数,范围为0 – n-1,且元素不能重复。比如 n = 3 时,需要获取一个长度为3的数组,元素范围为0-2;简单的理解就是生成一个无序的随机数组。 using System; using System.Collections.Generic; using System.Linq; using System.Text;...

    [阅读全文]

  • [图文] 使用C#实现顺序队列 [内容预览] 2541 | 2013-05-24
    队列(Queue)是插入操作限定在表的尾部而其它操作限定在表的头部进行的线性表。把进行插入操作的表尾称为队尾(Rear),把进行其它操作的头部称为队头(Front)。当对列中没有数据元素时称为空对列(Empty Queue)。 队列通常记为:Q= (a1,a2,…,an),a1为队头元素,an为队尾元素。元素按照a1,a2,…,an的次序依次入队,出队的次序与入队相同,即a1第一个出队,an最后...

    [阅读全文]

  • [图文] C#删除字符串尾部指定的子字符串 [内容预览] 1411 | 2012-04-30
    有时,我们可能要从一个字符串的尾部删除指定的字符串,这在C#中实现起来还较为方便。 其基本思想为: (1)首先判断一下源字符串中是否包含要删除的字符串; (2)分别计算源字符串和要删除的字符串的长度; (3)获取源字符串中要删除字符串的位置deletePos; (4)在源字符串的尾部deletePos位置开始截取与要删除字符串等长的字符串; (5)比较截取的字符串与要删除的字符串是否相...

    [阅读全文]

  • C#中判断指定的年份是否为闰年 [内容预览] 867 | 2012-04-30
    有很多人认为,只要年份能被4整除就是闰年了,实际上不是这样的,判断一个年份是否为闰年有两个条件: (1)如果一个年份能被400除尽,则其是闰年; (2)如果年份能被4整除,而不能被100整除,则该年份为闰年。 为什么年份被4整除而不能被100整除时才是闰年呢?下面首先介绍一个常识,然后再给出具体的算法。 关于公历闰年是这样规定的:地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分...

    [阅读全文]

  • C#中判断身份证号是否正确的方法 [内容预览] 853 | 2011-08-27
    最近,在一个项目中想判断输入的身份证号是否正确,则自己编写了一个用于判断身份证号是否正确的方法,用于判断用户输入的身份证号是否合法。因为当时项目比较急,写的方法也比较潦草,也没有进行优化,在使用过程中还未发现有错误。 这个方法能够判断15位的身份证号和18位的身份证号。 /// <summary> /// 判断字符串是否为身份证号 /// </summary> /// <para...

    [阅读全文]

  • C++和C#引用的区别 [内容预览] 134 | 2011-03-04
    C++与C#有些致命的区别,如果不注意,很可能导致一些莫名其妙的bug。引用类型就是其中一个。 C#中,引用跟指针比较接近,除了值类型(int, float, struct等),其它类型都是引用类型。它本身是一个栈上面的变量,指向堆上面的具体实例,可以随意更改它指向的实例。 而在C++中,引用是变量的一个别名而已,它需要在初始化时指向一个实例,之后对它的操作就相当于在原来实例上做修改。大部分情...

    [阅读全文]

  • 在C#中使用哈希表(HashTable,散列表) [内容预览] 348 | 2011-03-04
    哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 哈希表的优点:HashTable是System.Collections命名空间提供的一个容器,HashTable中的key/value均为object类型,所以Ha...

    [阅读全文]

  • C#中获得本周的周六和周日 [内容预览] 234 | 2011-03-03
    本文给出一个方法(函数)用来获得当前星期的周六和周日,这在我们日常编程中经常能使用到。 方法的名字为:ConvertDateToWeek #region ConvertDateToWeek public static void ConvertDateToWeek(DateTime date,out DateTime firstdate,out DateTime lastdate) { ...

    [阅读全文]

  • 获得任意两日期之间的有效工作日 [内容预览] 222 | 2011-03-03
    在《C#中获取某月的实际工作日》一文中讲了如何获得当月实际工作天数的方法,有时,我们可能要得到两个日期之间有效工作日的方法,下面就给具体的源代码。 #region 获得任意两日期之间的有效工作日(不包括周六日) private int getDays(System.DateTime date1,System.DateTime date2) { string m=DateDiff(E...

    [阅读全文]

  • C#中获取某月的实际工作日 [内容预览] 445 | 2011-03-03
    有时,我们在程序中需要计算某月的实际工作日,如幼儿园中收伙食费时按当月实际的工作日(不包括周六周日)来计算的,下面这个程序就是实现这个算法的。 private int getDays(System.DateTime date1) { int m=System.DateTime.DaysInMonth(date1.Year,date1.Month); int mm=0; for(in...

    [阅读全文]

  • 快速生成指定大小的随机不重复int数组的方法 [内容预览] 138 | 2011-02-09
    一个用来快速生成指定大小的随机不重复int数组的实用方法 /// <summary> /// 随机产生考场号 /// </summary> /// <param name="start">初始值</param> /// <param name="count">数量</param> /// <returns></returns> public static List<int> GetR...

    [阅读全文]

  • 使用C#编程实现圆的移动 [内容预览] 187 | 2010-09-10
    本例实现了编程移动一个圆: using System; using System.Drawing; using System.Threading; using System.Windows.Forms; public class AnimateFace : Form { private int x = 10, y = 10; private int width = 200, he...

    [阅读全文]

  • 用C#实现单击按钮时移动物体 [内容预览] 389 | 2010-09-10
    本例实现了一个通过单击按钮来移动物体的例子, using System; using System.Drawing; using System.Windows.Forms; public class ButtonToMove : Form { private int x = 50, y = 50; private Button move = new Button(); ...

    [阅读全文]

  • 用C#编写物体碰撞的程序 [内容预览] 830 | 2010-09-10
    本文讲解了使用C#编写物体碰撞的一个源代码,本实例来自一个老外的网站,从源代码就可以看出,编写的很专业,大家可以学一学。 using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.D...

    [阅读全文]

  • 使用回溯法找出n个自然数中取r个数的全排列 [内容预览] 119 | 2010-08-14
    本文介绍了使用回溯法找出n个自然数中取r个数的全排列的方法,有兴趣的可参考一下。 回溯法也称为试探法,该方法首先暂时放弃关于问题规模大小的限制,并将问题的候选解按某种顺序逐一枚举和检验。在回溯法中,放弃当前候选解,寻找下一个候选解的过程称为回溯。 本实例是用回溯法输出n个自然数中以r个数全排列。代码如下: public void Arrange(int n, int r) int i...

    [阅读全文]

  • 使用C#批量生成缩略图的工具源代码 [内容预览] 407 | 2010-03-03
    using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Threading; using System.IO; using Syste...

    [阅读全文]

  • 使用c#生成随机数总结 [内容预览] 1413 | 2010-03-03
    private static char[] constant = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', ...

    [阅读全文]

  • 用C#实现选择法排序 [内容预览] 164 | 2010-01-31
    导读:本文给出了使用C#实现选择发排序的算法 using System; namespace SelectionSorter { public class SelectionSorter { private int min; public void Sort(int [] list) { for(int i = 0; i < list.Len...

    [阅读全文]

  • 用C#实现希尔排序 [内容预览] 109 | 2010-01-31
    导读:本文介绍了使用C#实现希尔排序的方法 using System; namespace ShellSorter { public class ShellSorter { public void Sort(int [] list) { int inc; for(inc=1; inc <= list.Length/9; inc=3 * ...

    [阅读全文]

  • 用C#实现冒泡法排序 [内容预览] 331 | 2010-01-31
    导读:本文给出了使用C#进行冒泡法排序的源代码 using System; namespace BubbleSorter { public class BubbleSorter { public void Sort(int [] list) { int i, j, temp; bool done = false; j = 1; ...

    [阅读全文]

  • 用C#实现插入排序 [内容预览] 156 | 2010-01-31
    导读:本文介绍了使用C#实现插入法排序的算法 using System; namespace InsertionSorter { public class InsertionSorter { public void Sort(int [] list) { for(int i = 1; i < list.Length; i ++) { int t...

    [阅读全文]

  • C#快速排序 [内容预览] 101 | 2010-01-28
    快速排序思想: 基于分治策略,对冒泡排序的一种改进。对于要排序的一个序列,从中选一值进行排序,将其放入到正确的位置position。然后以position为界,对左右两部分再做排序。直到划分的长度为1。 步骤:设有一待排序的序列 1、分别设置low、high指向序列的最左端、最右端;从序列中选一个进行排序(通常选最左端的值low指向的值),存入到tmp; 2、从high端开始,查找比tmp...

    [阅读全文]

  • [图文] C#深度优先遍历结构算法 [内容预览] 211 | 2010-01-27
    N久都没做过关于C#的WinForm程序了,一直都是在研究asp.net的程序。 今天有个朋友问到深度遍历图这样的问题,开始都不知道如何下手,就问了问baidu 和 google,看到有人用C++写的这样的例子,顺便就学习了一下,发现自己都忘得差不多了(包括:数据结构),只能联想到刚开始学vs2003的时候,学习的第一个Hello Worl的例子,要创建一个控制台应用程序。 接着就打开V...

    [阅读全文]

总数:2330 上一页1下一页
关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图 | 用户守则 | 联系我们
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2017 biye5u.com. All Rights Reserved.
网站备案号:黑ICP备13005378号-3