编程基础
尘虚元
Hello Word
展开
-
数据结构和算法总结(四)
图的应用图论是在不同领域中分析和解决问题的手段,例如计算机网络设计、城市计划、找到最短路径和分子生物学。 1.最短路径问题可以通过应用Dijkstra算法来解决。Dijkstra算法基于贪婪法。Dijkstra算法需要设置两个数组 FINAL用于存储已经求出最短路径的顶点 DISTANCE[i]用于原创 2012-06-28 20:50:13 · 914 阅读 · 0 评论 -
数据结构和算法总结(一)
计算机科学是通过使用计算机解决各种问题的研究领域。为了使用计算机解决给出的问题,您需要为其设计算法。算法的效率可以通过数据结构来改善。选择并实现合适的数据结构和算法来解决特定的编程问题。 一、算法和数据结构简介二、实现排序算法(选择、冒泡、插入、快排、堆。。。)三、执行搜索算法线性搜索二叉搜索散列搜索四、使用链接列表解原创 2012-06-28 20:41:59 · 1004 阅读 · 0 评论 -
数据结构和算法总结(二)
六、 使用树结构解决编程问题二叉树的性质性质1:在二叉树的第i层上至多有2i个节点(i≥0)。性质2:若二叉树的深度为d(d≥0),则该二叉树最少有d个节点,最多有2d-1个节点。性质3:含有n个节点的二叉树的深度最大值为n,最小值为Math.Ceiling (log2(n+1))。性质4:对任何一棵二叉树,如果其叶子节点数为n0,度原创 2012-06-28 20:46:00 · 846 阅读 · 0 评论 -
数据结构和算法总结(三)
六、 使用图解决编程问题图可以表示为Graph=(V,E),V顶点,E边完全图(complete graph):图中的每个顶点与其他顶点都有边相连。在完全图中边数目达到最大。连通图:若从顶点vi到顶点vj有路径,则称顶点vi与vj是连通的。如果无向图中任意两个顶点都是连通的,则称此图是连通图。生成树(spanning tree):一个连通图的原创 2012-06-28 20:48:20 · 989 阅读 · 0 评论 -
10种排序算法总结(冒泡、选择、插入、希尔、归并、快速、堆、拓扑、锦标赛、基数)
排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准:(1)执行时间 (2)存储空间 (3)编程工作 对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,(1)为首要。主要排序法有:一、冒泡(Bubble)排序——相邻交换二、选择排序——每次最小/大排在相应的位置三、插入排序——将下一个插入已排好的序原创 2012-06-28 19:41:55 · 2286 阅读 · 0 评论 -
c#委托与事件
委托委托是什么委托怎么用委托的底层原理委托 vs 函数指针为什么委托定义的返回值通常都为void?事件事件是什么事件怎么用委托 vs 事件(推荐):自定义事件.Net Framework的编码规范委托、事件与Observer设计模式如何让事件只允许一个客户订阅?委托委托是什么委托本质就是函数的地址,类似c++中的函数指针。 使用委托...转载 2018-05-03 23:24:35 · 1841 阅读 · 0 评论