24小时热门版块排行榜    

CyRhmU.jpeg
查看: 691  |  回复: 6

yanweicumt

银虫 (小有名气)

[求助] 几何问题求解释

note that, with Manhattan distance as our metric, each node has no more than 4d neighbors at distance d, and for a network of n nodes arranged in a square grid, the distance between any two nodes is bounded by 2*sqrt(n).

请大家帮忙看下这句话,我怎么就计算不出来这个4d和2*sqrt(n)呢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

yanweicumt(金币+3): 2011-06-30 22:27:31
自己画一下,曼哈顿距离是边长之和

例如如果是蓝色点,所有距离为2的点是黑色的,共4*2=8个,如果在靠近边上,会少于8个,很容易理解

边长为n的grid,任意2个点的曼哈顿距离绝对小于grid的对角线,不过这个上限应该是sqrt(2)*n啊,绿色那条

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2011-06-30 15:01:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yanweicumt

银虫 (小有名气)

引用回帖:
Originally posted by libralibra at 2011-06-30 15:01:31:
自己画一下,曼哈顿距离是边长之和

例如如果是蓝色点,所有距离为2的点是黑色的,共4*2=8个,如果在靠近边上,会少于8个,很容易理解

边长为n的grid,任意2个点的曼哈顿距离绝对小于grid的对角线,不过这个上限应该 ...

谢谢你的回复,很详细。
但我还有几个问题:
1, 这个grid的边长是多少呢?论文中这句话的意思应该是将n的节点放到单位正方形中吧
当如果距离d改为3,或者更大时,就到不了4d个邻居节点啊?
2,为什么你画的图里面是用n做边长?
3,曼哈顿是边长的和,所以如果得知正方形的边长是sqrt(n)的话,两个节点之间的距离就是2×sqrt(n),你觉得呢?
3楼2011-06-30 22:27:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

引用回帖:
Originally posted by yanweicumt at 2011-06-30 22:27:04:
谢谢你的回复,很详细。
但我还有几个问题:
1, 这个grid的边长是多少呢?论文中这句话的意思应该是将n的节点放到单位正方形中吧
当如果距离d改为3,或者更大时,就到不了4d个邻居节点啊?
2,为什么你画 ...

呵呵,我粗心了,我刚看了遍,是n node.边长是sqrt(n),结果就对了
如果n node,矩形是x*y = n,当且仅当x==y = sqrt(n)是取到极值
此时斜边
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2011-06-30 22:38:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

另外,你说的第2点"当如果距离d改为3,或者更大时,就到不了4d个邻居节点啊?"就是我说的,靠近边的时候会肯定小于4*d的,但是,如果这个grid再大点,边长大于等于6的时候,你从中心点计算其neighbour是可以找到12个的,所以人家原文说的是"no more than 4d neighbors"

那段话是给出了2个boundaries:
1.grid中任意一个节点的曼哈顿距离为d的邻节点个数不会超过4*d.能不能取到这个极值,跟距离与边长和节点位置有关.可以想象,在一个无穷grid中,任意几点的邻节点个数都等于4*d;

2.n个nodes的grid中,任意2个节点之间的曼哈顿距离不会超过2*sqrt(n).上面分析了,假设这个grid长和宽分别是x,y,那么有 x*y = n, 这个grid中距离最远的2个节点是矩形的对角线上2个点.他们之间的曼哈顿距离就是 x+y.由不等式 x+y>=2*sqrt(x*y)=2*sqrt(n)就知道这个极值在x=y=sqrt(n)的时候取得.
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
5楼2011-06-30 22:47:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yanweicumt

银虫 (小有名气)

引用回帖:
Originally posted by libralibra at 2011-06-30 22:47:01:
另外,你说的第2点"当如果距离d改为3,或者更大时,就到不了4d个邻居节点啊?"就是我说的,靠近边的时候会肯定小于4*d的,但是,如果这个grid再大点,边长大于等于6的时候,你从中心点计算其neighbour是可以找 ...

谢谢,可是为什么是x×y=n呢,n个节点和这个grid有什么关系啊?
6楼2011-06-30 23:08:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

引用回帖:
Originally posted by yanweicumt at 2011-06-30 23:08:02:
谢谢,可是为什么是x×y=n呢,n个节点和这个grid有什么关系啊?

n个节点的grid,边长是x,y,肯定有x*y=n的
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
7楼2011-06-30 23:32:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yanweicumt 的主题更新
信息提示
请填处理意见