码迷,mamicode.com
首页 >  
搜索关键字:数据结构    ( 30813个结果
看数据结构写代码(43) 关节点
首先 说明一下 概念问题: 关节点 :如果删除无向 图中的一个顶点,以及与顶点相关的边,把 图的 一个连通 分量 变成 两个 以上的 连通 分量。这样的顶点叫做关节点。 没有 关节点的 无向图,叫做 重连通图。重连通图中 任意 两个顶点 至少 存在 两条以上的 通路。 如果 删除 连通图上的 k个 节点,才能 破坏 他的连通性,那么 这个连通图的 连通度 为k。 下面的算法 是 求 连通图...
分类:其他好文   时间:2015-04-13 14:45:47    阅读次数:210
Bitmap
什么是Bit-map 所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。 来看一个具体的例子,假设我们要对0-7内的5个元素(4,7,2,5,3)排序(这里假设这些元素没有重复)。那么我们就可以采用Bit-map的方法来达到排序的目的。要表示8个数,我们就只需要8个Bit(1B...
分类:其他好文   时间:2015-04-13 10:54:37    阅读次数:155
看数据结构写代码(42)最小生成树
首先给出 一些 概念问题: 1.生成树: 一个n个顶点的 连通图 的 极小连通子图。 它含有n个顶点,但只有 n-1条边,不存在回路。 2.最小生成树:一个带权的 无向连通图,求出 各边权值相加  最小的 生成树,叫做最小生成树。 所以 求最小生成树  首先 要满足: 1. 首先 是 无向图 2. 必须是 连通图(任意两个顶点可达)3.带权 简单的说 就是 必须是 连通网。 求...
分类:其他好文   时间:2015-04-13 09:47:10    阅读次数:187
【数据结构】二叉树层次遍历
【数据结构】二叉树层次遍历package 蓝桥练习;public class 二叉树层次遍历 { public static int MAXSIZE = 100; public static Node queue[] = new Node[MAXSIZE]; public static void main(String[] args) { Node h = new...
分类:其他好文   时间:2015-04-13 09:40:58    阅读次数:134
数据结构学习——树的基本概念
参考书籍《数据结构与算法分析——C语言描述》  连接俩个节点的称为边 一棵树是N个节点和N-1条边的集合 没有儿子的节点称为树叶(叶)。 具有相同父亲的称为兄弟。 对任意节点ni,ni的深度为从根到ni的唯一路经长,其中根的深度为0。一棵树叶的深度等于它最深的树叶深度。 ni的高是从ni到一片树叶的最长路径的长,一棵树的高等于它根的高,所有树叶的高都是0. 某路径的长为该路径...
分类:其他好文   时间:2015-04-13 09:39:01    阅读次数:129
一元多项式的加法和乘法
#include #include using namespace std; typedef struct { int coef; //系数项 int exp; //指数项 }ElemType; typedef struct Node { ElemType data; struct Node *next; }LNode,*LinkList; void InitList(Lin...
分类:其他好文   时间:2015-04-13 09:35:43    阅读次数:141
hdoj 2063 过山车(二分图匹配之匈牙利算法)
过山车 http://acm.hdu.edu.cn/showproblem.php?pid=2063 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 13019    Accepted Submission(s): 5709 ...
分类:编程语言   时间:2015-04-13 09:33:42    阅读次数:261
数据结构代码整理——链表
/* c2-1.h 线性表的动态分配顺序存储结构 */ #define LIST_INIT_SIZE 10 #define LISTINCREMENT 2 typedef struct { ElemType *elem; int length; int listsize; }SqList; /* c2-2.h 线性表的单链表存储结构 */ struct LNode...
分类:其他好文   时间:2015-04-13 09:29:48    阅读次数:153
C语言数组使用
数组是C语言中的一种数据结构,它可以一次定义一组变量,故而为数组,对数组的操作即可对单个的数组的成员操作,也可使用数组的首地址(arrary[0]的地址)逐个访问。使用数组可先对数组初始化,我们常见的初始化的方式就是逐个赋值,没有赋值的就是系统默认的0(这是对数组初始..
分类:编程语言   时间:2015-04-13 07:09:25    阅读次数:132
内核线程和进程的区别
http://blog.csdn.net/tigerjibo/article/details/8299686前言:从 内核的角度来说,它并没有线程这个概念。Linux把所有线程都当做进程来实现。内核并没有准备特别的调度算法或者定义特别的数据结构来表示线程。相反, 线程仅仅被视为一个与其他进程共享某些...
分类:编程语言   时间:2015-04-13 01:39:08    阅读次数:150
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!