共 18 篇文章 |
|
#region 随机生成数据/// <summary>/// 随机生成数据///<param name="max">执行生成的数据上线</param>/// </summary>public static void CreateData(int max){var sw = new StreamWriter(Environment.CurrentDirectory + "//demo.txt");for (int i = 0; i <max; i++){Thread.Sleep(2);var ran... 阅71 转8 评0 公众公开 14-10-25 10:19 |
1 #region 边的信息 2 /// <summary> 3 /// 边的信息 4 /// </summary> 5 public class Edge 6 { 7 //开始边 8 public int startEdge; 9 10 //结束边11 public int endEdge;12 13 //权重14 public int weight;15 16 //是否使用17 public bool isUse;18 19 //累计顶点20 public HashSet<int> vertexs = new HashSet<int>... 阅121 转7 评0 公众公开 14-10-25 10:18 |
经典算法题每日演练——第十六题 Kruskal算法这篇我们看看第二种生成树的Kruskal算法,这个算法的魅力在于我们可以打一下算法和数据结构的组合拳,很有意思的。9 10 namespace ConsoleApplication2 11 { 12 public class Program 13 { 14 public static void Main() 15 { 16 MatrixGraph graph = new MatrixGraph(); 阅62 转6 评0 公众公开 14-10-25 10:17 |
1 #region 树节点 2 /// <summary> 3 /// 树节点 4 /// </summary> 5 public class Node 6 { 7 /// <summary> 8 /// 父节点 9 /// </summary>10 public char parent;11 12 /// <summary>13 /// 节点的秩14 /// </summary>15 public int rank;16 }17 #endregion. 阅84 转6 评0 公众公开 14-10-25 10:17 |
1 public class Graph 2 { 3 /// <summary> 4 /// 顶点个数 5 /// </summary> 6 public char[] vertexs; 7 8 /// <summary> 9 /// 边的条数10 /// </summary>11 public int[,] edges;12 13 /// <summary>14 /// 顶点个数15 /// </summary>16 public int vertexsNum;17 18 /// <summary>19 /// 边的... 阅119 转6 评0 公众公开 14-10-25 10:16 |
阅42 转6 评0 公众公开 14-10-25 10:15 |
1 #region 设置相应bit位上为1 2 /// <summary> 3 /// 设置相应bit位上为1 4 /// </summary> 5 /// <param name="i"></param> 6 static void Add(byte i) 7 { 8 //相当于 i%8 的功能 9 var shift = i &0x07;10 11 //计算应该放数组的下标12 var arrindex = i >>3;13 14 //将byte中的 1 移动到i位1... 阅58 转7 评0 公众公开 14-10-25 10:14 |
经典算法题每日演练——第十题 树状数组 有一种数据结构是神奇的,神秘的,它展现了位运算与数组结合的神奇魅力,太牛逼的,它就是树状数组,这种数据结构不是神人是发现不了的。1 #region 当前的sum数列的起始下标 2 /// <summary> 3 /// 当前的sum数列的起始下标 4 /// </summary> 5 /// <param name="i"></p... 阅60 转5 评0 公众公开 14-10-25 10:14 |
阅62 转6 评0 公众公开 14-10-25 10:13 |
到找到某个节点的孩子节点也是当初节点同样的字符(h),没有找到的话,其失败指针就指向root。44 }45 //如果无法深入子节点,则退回到父亲失败节点并向root节点往根部延伸,直到null46 //(一个回溯再深入的过程,非常有意思)47 failNode = failNode.faliNode;48 }49 50 //等于null的话,指向root节点51 if (failNode == null)52 temp.childN... 阅63 转7 评0 公众公开 14-10-25 10:12 |