| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2585 人关注过本帖
标题:[已解决]最大连续的面积。谢谢大家,特别是种子染色法。
只看楼主 加入收藏
SNAKEQX
Rank: 1
等 级:新手上路
帖 子:112
专家分:3
注 册:2006-4-11
收藏
 问题点数:0 回复次数:20 
[已解决]最大连续的面积。谢谢大家,特别是种子染色法。
有一块空地,
...**
**.**
.**..
***..
..***
输出'*'连接在一起的最大面积.
上例中连接在一起的面积有两快,一块面积是4,另一块是10,
所以输出应该是10

看了这题,在纸上画了半天,一点思路也没有.....求大家给我个思路,等我写完了再贴代码上来.

这里先谢谢了!!

[[it] 本帖最后由 SNAKEQX 于 2008-4-29 13:45 编辑 [/it]]
搜索更多相关主题的帖子: 面积 种子 染色 思路 
2008-04-25 09:54
SNAKEQX
Rank: 1
等 级:新手上路
帖 子:112
专家分:3
注 册:2006-4-11
收藏
得分:0 
转化为图结构然后遍历一次?记下步数??
2008-04-25 10:54
雨中飛燕
Rank: 1
等 级:新手上路
帖 子:765
专家分:0
注 册:2007-10-13
收藏
得分:0 
求连通图的结点数而已,这已经是图的结构,不需要转化

" border="0" />[color=white]
2008-04-25 11:13
SNAKEQX
Rank: 1
等 级:新手上路
帖 子:112
专家分:3
注 册:2006-4-11
收藏
得分:0 
求连接图的结点数!OK,我试试!
2008-04-25 11:19
hoodlum1980
Rank: 2
来 自:浙江大学
等 级:论坛游民
威 望:2
帖 子:289
专家分:23
注 册:2008-2-24
收藏
得分:0 
图遍历:BFS(Breadth-First-Search)  

 递归算法
procedure bfs(g:graph; i:integer);
var j:integer;
begin
for j:=1 to g.vexn do
          if 顶点j是i的邻接顶点并且未被访问过 then         
       访问顶点j
       置顶点j访问标记
       顶点j入队
    当队列不为空时,
     出队
         bfs(g,qu[front]);     
end;
2008-04-25 13:27
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
楼上是delphi?图的广度遍历...

学习需要安静。。海盗要重新来过。。
2008-04-25 13:32
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
如果我做,我会用种子染色法

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2008-04-25 19:02
SNAKEQX
Rank: 1
等 级:新手上路
帖 子:112
专家分:3
注 册:2006-4-11
收藏
得分:0 
请问什么叫种子染色法?
另外请大家要对我严格点,不要贴代码,我会越来越懒得,本来就很懒了。。。。。。
谢谢:)

[[it] 本帖最后由 SNAKEQX 于 2008-4-26 09:26 编辑 [/it]]
2008-04-26 09:18
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 
种子染色法?貌似我们做图像处理的时候叫做种子填充法,这是一种简单理解的填充算法,不过效率不高。

做法是这样的,首先我们从一个起始点入手进行填充,看一下的例子
         *
        *o*
         *
o表示起始点进行填充探测,假定坐标(x,y),填充颜色为c,填充函数为seed_file()
我们可以进行递归探索:
seed_fill(x,y,c)
{
   如果(x,y)坐标处的颜色不为c
            1、填充(x,y)
            2、递归调用seed_fill探测(x,y)相邻的四个点,即(x+1,y), (x-1,y), (x,y+1), (x,y-1)
   否则
            返回
}
这种算法适合作用于填充区域较小的情况,因为效率实在太低了。

还有一种效率比较高的填充方法,使用割线交点,就是在目标图形上逐行画水平线条,计算与填充区域(即多边形)的交点以检测多边形的边界,这里与LZ的题目关系不大,不详细展开介绍了。

我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2008-04-26 09:39
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
种子染色法效率为O(SIZEMAP) 即设图大小为m,n则,效率为O(mn),不算太低,可以应付本题

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2008-04-26 10:44
快速回复:[已解决]最大连续的面积。谢谢大家,特别是种子染色法。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012531 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved