深度搜索应用之黑白图像(非递归)前言: 使用深度搜索,有两个方法:递归,栈。本质是栈。
递归有一个缺陷,栈溢出。栈有一个缺陷,程序相对递归更复杂。练习题:
输入一个n*n的黑白图像(1表示黑色,0表示白色),任务是统计其中八连块的个数。如果两个黑格子有公共边或者公共顶点,就说它们属于同一个八连...
分类:
其他好文 时间:
2014-05-26 21:53:21
阅读次数:
344
先了解一下基本的知识:转自:http://blog.sina.com.cn/s/blog_89a06c7d0100trcg.html二分图:二分图又称二部图,是图论中的一种特殊模型。设G=(V,E)是一个无向图,如果顶点V可以分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个...
分类:
其他好文 时间:
2014-05-26 11:21:59
阅读次数:
191
http://acm.hdu.edu.cn/showproblem.php?pid=1115思路:转换为求三角形的重心。从第一个顶点出发,分别链接i,i+1形成三角形,分别求出每个三角形的面积,总面积之和为各部分之和。根据物理公式n个点的质量是mi,则重心是:X=(x1*m1+x2*m2+...xn...
分类:
其他好文 时间:
2014-05-26 04:04:18
阅读次数:
232
题目大意:给你一个奇奇怪怪的迷宫, 这个迷宫包括墙和门。再给你一个起始坐标,
问你从迷宫内到外面至少要穿越多少的门。题目分析:穿越多少门等同于路过了多少个格子。为此我们可以将整个地图中的格子,门,墙,墙的交界处(格子的顶点)全部抽象成点。即坐标(奇数,奇数)为格子的坐标,坐标(奇数,偶数)或坐标(偶...
分类:
其他好文 时间:
2014-05-26 02:44:41
阅读次数:
347
唉o(︶︿︶)o ,我果然还是玩不了 邻接链表,捣鼓了一晚上,只实现了 DFS的搜索 ,BFS 至今还不会,快回宿舍了,等校赛后再研究吧
邻接链表:
n个顶点m条边的无向图,表示中有
n 个顶点表结点和 2m 个边表结点。(也就是说,每条边 u-v 在邻接表 中出现两次:一次在关于u的邻接表中,另一次在关于v的邻接表中)PS:注意是无向图,有...
分类:
其他好文 时间:
2014-05-24 23:30:32
阅读次数:
247
Unity3d 镜面折射
网上能找到的基本上是固定管道或表面渲染的shader,
特此翻译为顶点、片段渲染的Shader...
分类:
其他好文 时间:
2014-05-24 19:48:03
阅读次数:
544
剑指offer上的全排列相关题目。
输入一个含有8个数字的数组,判断有么有可能把这8个数字分别放到正方体的8个顶点上,使得正方体上三组相对的面上的4个顶点的和相等。
思路:相当于求出8个数字的全排列,判断有没有一个排列符合题目给定的条件,即三组对面上顶点的和相等。
代码:...
分类:
其他好文 时间:
2014-05-23 00:26:58
阅读次数:
418
同样是查找一个图是否有环的算法,但是这个算法很牛逼,构造树的时候可以达到O(lgn)时间效率。n代表顶点数
原因是根据需要缩减了树的高度,也叫压缩路径(Path compression),名字很高深,不过其实不难理解,简单来说就是每次查找一个节点的时候,都把这一路径中的所有节点都赋予根节点作为路径。
原文没指出的地方:
也因为需要压缩,所以初始化的时候注意,不能如前面简单实用Unio...
分类:
其他好文 时间:
2014-05-23 00:21:42
阅读次数:
305
在DAG中DFS中顶点的出栈顺序即逆拓扑序。
def topological_sort( graph ):
is_visit = dict( ( node, False ) for node in graph )
li = []
def dfs( graph, start_node ):
for end_node in...
分类:
编程语言 时间:
2014-05-22 23:12:10
阅读次数:
487
一个n*m的网格,求这个网格中矩形的数目。比如以下2*2网格,总共有9个矩形:4个1*1的矩形,4个1*2的矩形,1个2*2的矩形算法1:动态规划,假设dp[i][j]表示以第
i 行第 j 列的格子为右下角顶点的矩形数目,那么dp[i][j] = 1 + dp[i-1][j] + dp[i][j-...
分类:
其他好文 时间:
2014-05-21 18:43:59
阅读次数:
192