码迷,mamicode.com
首页 >  
搜索关键字:结点    ( 9777个结果
字典树小结
字典树: 字典树 即Tire树,以一个空的头结点分若干的分支,来存放数据,虽浪费了大量内存,但是查找速度非常快。 匹配 时间复杂度 O(n) n = strlen(a); 字典树分 3步,建树、插入、查找 当然有时候,建树的选择是很重要的一点,尽量本着少往字典树上添加节点的原则,容易爆!!! 列入下面这题,用m建树,n来查找,即可AC,如果用n来建...
分类:其他好文   时间:2014-06-09 23:42:44    阅读次数:295
不带头结点的单链表递归删除元素为X的结点
#include using namespace std;struct Node{ Node *next; int elem;};void creatList(Node* &head){ head = new Node; int elem; cin>>elem; ...
分类:其他好文   时间:2014-06-09 16:07:55    阅读次数:229
poj1182 食物链
并查集经典题,但是太坑了,数据只有一组,用EOF读入无限WA,我就这么对着正确的代码查了半个多小时,次奥。把一个结点拆成3个结点分别代表属于A,B,C三类,对于X,Y同类,有如果XA->YA,XB->YB,XC->YC 所以直接把两两并起来,当然要判断能不能并对于X吃Y ,有 XA->YB ,XB-...
分类:其他好文   时间:2014-06-09 15:49:48    阅读次数:212
图论算法----强连通
poj2186Popular Cows分析:直接求一下强连通分量,对于同一个强连通分量里面的结点状态是相同的,要求有多少个人被其他所有的人都认可,只有可能是拓扑排序的最后一个强连通的结点个数,判断一下其他节点是否都可以到该联通分量就ok了。 1 #include 2 #include 3 #in.....
分类:其他好文   时间:2014-06-08 21:44:25    阅读次数:307
LeetCode --- Balanced Binary Tree
题目链接题意: 给定一棵二叉树, 判断是否为平衡二叉树, 这里的平衡二叉树指的是:每个结点的左右子树的深度之差不超过1。附上代码: 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * ...
分类:其他好文   时间:2014-06-08 18:58:35    阅读次数:194
LeetCode --- Minimum Depth of Binary Tree
题目链接求二叉树最小深度,最小深度指的是:从根节点走到最近的叶子结点的最短长度附上代码: 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6...
分类:其他好文   时间:2014-06-08 18:43:48    阅读次数:220
循环链表的实现与操作(C语言实现)
循环链表是另一种形式的链式存贮结构。它的特点是表中最后一个结点的指针域指向头结点,整个链表形成一个环。 循环链表的操作 1,循环链表的新操作 2, 获取当前游标指向的数据元素 3, 将游标重置指向链表中的第一个数据元素 4,将游标移动指向到链表中的下一个数据元素 5,直接指定删除链表中的某个数据元素 CircleListNode* CircleList_DeleteNode(CircleList* list, CircleListNode* node); CircleListNode* Ci...
分类:编程语言   时间:2014-06-08 17:04:24    阅读次数:242
堆排序
堆排序 // 测试堆排序 // @start:调整的起点 // @end:调整的终点,在堆排序的过程中,不断地减小调整区间,end参数起作用 void SiftDown(int arr[], int start, int end) { int i = start; int j = 2*i + 1; // j记录的是i结点的左孩子 int temp = arr[i]; ...
分类:其他好文   时间:2014-06-08 16:19:45    阅读次数:187
POJ1470 Closest Common Ancestors 【Tarjan的LCA】
很裸的模版题,不过Tarjan要好好多拿出来玩味几次 很有点巧妙呢,tarjan,大概就是当前结点和它儿子结点的羁绊 WA了俩小时,,,原因是,这个题是多数据的(还没告诉你T,用scanf!=EOF来控制结束),更重要的是和这个和Codeforces不一样,Codeforces的多组数据好像会重新开始程序似的,不用在程序里面写清零,但这个题是多数据用EOF来控制输入的,多数据在一个文件里都一次...
分类:其他好文   时间:2014-06-08 08:28:39    阅读次数:190
双向链表的实现与操作(C语言实现)
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。 单链表的局限 1,单链表的结点都只有一个指向下一个结点的指针 2,单链表的数据元素无法直接访问其前驱元素 3,逆序访问单链表中的元素是极其耗时的操作...
分类:编程语言   时间:2014-06-08 02:16:06    阅读次数:352
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!