随笔分类 - 数据结构
1
摘要:1 vector<int> p[MAX]; 2 int V; 3 int color[MAX]; 4 5 bool dfs(int v,int c) 6 { 7 color[v]=c; 8 for(int i=0; i<p[v].size(); i++){ 9 if(color[p[v][i]==c
阅读全文
摘要:复杂度 O(logn) 1 #include <queue> 2 #include <cstdio> 3 using namespace std; 4 5 //表示节点的结构体 6 struct node{ 7 int val; 8 node *lch,*rch; 9 }; 10 11 //插入数值
阅读全文
摘要:调用函数时,主调的函数所拥有的局部变量等信息需要存储在特定的内存区域.这个区域被称作栈内存区.另一方面,利用new或者malloc进行分配的内存区域被称为堆内存. 栈内存在程序启动时被统一分配,此后不能再扩大.由于这一区域有上限,所以函数的递归深度也有上限.虽然与函数中定义的局部变量的数目有关,不过
阅读全文
摘要:N*M的迷宫,从起点到终点,求最短距离 宽度优先搜索按照距开始状态由近及远的顺序进行搜索,因此可以很容易的用来求最短路径,最少操作之类问题的答案. (可以构造成pair或者编码成int来表达状态) 当状态更加复杂时,就需要封装成一个类来表示状态了. 虽然到达终点时就会停止搜索,可如果继续下去直到队列
阅读全文
摘要:N*M的园子,雨后积起了水.八连通的积水背认为是连接在一起的.请求出园子里总共有多少水洼? dfs(Depth-First Search) 八个方向的简单搜索.... 深度优先搜索从最开始的状态出发,遍历所有可以到达的状态.由此可以对所有的状态进行操作,或者列举出所有的状态. 1 int N,M;
阅读全文
摘要:STL: 队列中pop完成的不是取出最顶端的元素,而是取出最低端的元素.也就是说最初放入的元素能够最先被取出(这种行为被叫做FIFO:First In First Out,即先进先出). queue:front 是用来访问最底端数据的函数. 1 #include <queue> 2 #include
阅读全文
摘要:STL: pop:完成的仅仅是移除最顶端的数据.如果访问最顶端的数据,需要使用top函数(这个操作通常也被称为peek). 1 #include <stack> 2 #include <cstdio> 3 uisng namespace std; 4 5 int main() 6 { 7 stack
阅读全文
摘要:原文链接:http://blog.csdn.net/jarily/article/details/8679280 1 /****************************************** 2 数据结构: 3 BST(Binary Search Tree),二叉查找树; ...
阅读全文
摘要:借鉴的博客:http://baike.sogou.com/v111784.htmhttp://blog.csdn.net/cqnuztq/article/details/8919204http://blog.csdn.net/pony_maggie/article/details/41620389h...
阅读全文
摘要:可学习的博客: http://blog.csdn.net/m6830098/article/details/8707814 http://book.51cto.com/art/200907/134532.htm http://www.lxway.com/6084102.htm
阅读全文
摘要:可学习的博客:http://blog.chinaunix.net/uid-28639221-id-4678881.htmlhttp://blog.csdn.net/cqnuztq/article/details/8896953http://blog.csdn.net/u010187139/artic...
阅读全文
摘要:各类排序实现代码: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #includ...
阅读全文
摘要:第一步以LSD为例,假设原来有一串数值如下所示:73, 22, 93, 43, 55, 14, 28, 65, 39, 81首先根据个位数的数值,在走访数值时将它们分配至编号0到9的桶子中:01 812 223 73 93 434 145 55 65678 289 39第二步接下来将这些桶子中的数值...
阅读全文
摘要:可学习的链接:http://zhaoyuqiang.blog.51cto.com/6328846/1165492 #include<stdio.h>#include<stdlib.h>#include<math.h>#include<iostream>using namespace std;//#i
阅读全文
摘要:细细理解 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 struct film{10 char title[45];11...
阅读全文
摘要:struct Lnode *next中,为什么struct Lnode 可以重复定义呢?括号外已经有struct Lnode ,怎么里面还能用这种类型?在括号外面定义的是结构体,意思就是我要定义一个结构体了,里面有什么什么数据,而在里面定义的*next结构体类型的指针,意思是,我定义的结构体每个结点...
阅读全文
摘要:1 #define MAXSIZE 100 //MAXSIZE 为线性表可能的最大长度 2 #include 3 #include 4 using namespace std; 5 typedef int ElemType; 6 typedef struct 7 8 { 9 ElemType data[MAXSIZE]; 10 ...
阅读全文
1