上一页 1 2 3 4 5 6 7 8 9 ··· 14 下一页
摘要: 改变困境没有人比自己更值得信赖 阅读全文
posted @ 2013-06-17 10:59 SolarJupiter 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 图如果在一个无向图中从每一个顶点到每个其他顶点都存在一条路径,则称该无向图是连通的。具有这样性质的有向图是强连通的。图的两种表示方法邻接矩阵和邻接表的方法适用于稠密图和稀疏图;拓扑排序不是唯一的,任意合理的排序都是可以的;简单的求拓扑的算法是:先找出任意一个没有入边的顶点,然后显示出该顶点,并将它和它的边一起从图中删除,然后,我们对图的其余部分应用同样的方法处理。 1 //简单的拓扑排序的伪码 2 void TopSort(Graph G) 3 { 4 int Counter; 5 Vertex V,W; 6 for(Counter=0;Counter<NumVerte... 阅读全文
posted @ 2013-06-14 11:54 SolarJupiter 阅读(759) 评论(0) 推荐(0) 编辑
摘要: 排序插入排序 1 void InsertionSort(ElementType A[],int N) 2 { 3 int j,p; 4 ElementType Tmp; 5 for(p=1;p<N;p++)//N-1次循环 6 { 7 Tmp=A[p]; 8 for(j=p;j>0&&Tmp<A[j-1];j--) 9 A[j]=A[j-1];10 A[j]=Tmp;11 }12 }由于嵌套循环每一次花费N次迭代,因此插入排序时间为O(... 阅读全文
posted @ 2013-05-31 18:00 SolarJupiter 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 堆是一颗被完全填满的二叉树,有可能的例外是在底层,底层的元素被从左到右被填满;一颗高为h的完全二叉树有2h到2h+1-1个节点;完全二叉树的高是¸logN¸;因为完全二叉树很有规律,所以它可以用一个数组表示而不需要指针。对于数组实现上,任一位置i上的元素,其左儿子在2i上,右儿子在2i+1中,它的父亲在¸i/2¸上。一个堆结构将由一个数组,一个代表最大值的整数以及当前的堆大小组成。 1 //优先队列的声明 2 #ifndef _BinHeap_H 3 4 struct HeapStruct; 5 typedef struct HeapStruct *Pr 阅读全文
posted @ 2013-05-30 18:00 SolarJupiter 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 散列(Hash)散列是以常数平均时间执行插入,删除,查找的技术;需要元素之间比较,排序的信息,如查找最大,最小值等等操作不被hash所支持;散列表关键的是设计哈希函数,运算简单并且在单元之间均匀的分配关键字,并减少碰撞; 1 //分离连接散列表的类型声明 2 #ifndef _HashSep_H 3 4 struct ListNode; 5 typedef struct ListNode *Position; 6 struct HashTbl; 7 typedef struct HashTbl *HashTable; 8 9 HashTable InitializeTable(int Ta.. 阅读全文
posted @ 2013-05-28 17:52 SolarJupiter 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 树 1 #ifndef _Tree_H 2 struct TreeNode; 3 typedef struct TreeNode *Position; 4 typedef Struct TreeNode *SearchTree; 5 6 SearchTree MakeEmpty(Search T); 7 Position Find(ElemtntType X,SearchTree T); 8 Position FindMin(SearchTree T); 9 Position FindMax(SearchTree T); 10 SearchTree Insert(Eleme... 阅读全文
posted @ 2013-05-28 14:00 SolarJupiter 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 中午休息后看到一个帖子很有意思,保存一下: 程序员的通病,技术上能实现的,他们的口头禅就是:"那个简单呢"!亲,你知道这直接影响着你的报价,及付款问题么! 你的一句简单活着很快把活干完,就直接影响到了收钱! 可能这个东西对于不会的人来说有点难度,也值你那个钱!你会,你觉得简单,但是你不能做的简单。 就像我们看到修水管的,随便用扳手拧两下就好了。然后收钱的时候有些人就会讨价说,你就拧了两下, 干嘛还要那么多钱啊,不值那么多钱。同样的,软件也是一样的。这个东西,你很快做出来了。但是后面又给个东西,技术对接上出现小问题,耽误哪怕2小时,客户也会记在心里,他认为你是故意的,拖延了他 阅读全文
posted @ 2013-05-27 14:29 SolarJupiter 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 代码=算法+数据结构软件=代码+架构系统=软件+资源ERP是软件和资源的集合体 阅读全文
posted @ 2013-05-27 09:41 SolarJupiter 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 学会对自己制定目标并执行。 有人说,我有目标,那就是1年精通xx语言。我说,这样的目标等于没有目标。制定目标必须要遵循SMART原则,那就是:目标必须是具体的(Specific)目标必须是可以衡量的(Measurable)目标必须是可以达到的(Attainable)目标必须和其他目标具有相关性(Relevant)目标必须具有明确的截止期限(Time-based)不可被验证的目标只能说是口号,而喊口号又恰恰是中国人最擅长的。要建立起可验证的目标,还需要对目标进行追踪。在对目标进行追踪验证的过程中可以使用一些工具辅助; 熟练使用各种快捷键。对于程序员来说,提高速度就意味着了生产率。提高了生产率,你 阅读全文
posted @ 2013-05-27 09:23 SolarJupiter 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 桶式排序: 设置一个数组Count,大小为M,并初始化为零,于是Count有M个单元,开始时都是空的。当Ai被读入是Count[Ai]增加1,在所有的输入被读进纸盒,扫描数组Count,打印出排好序的表。该算法耗费O(M+N);基数排序是桶式排序(bucket sort)的推广。基数排序就是多趟桶式排序;算法步骤如下:例子对0-999的一组数字排序:第一趟基数排序后的桶:01512343641252162787290123456789第二趟基数排序后的桶81021651272927125343640123456789最后一趟的基数排序为:6427810125216343512729012345 阅读全文
posted @ 2013-05-24 10:26 SolarJupiter 阅读(233) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 14 下一页