关于mathematica纯函数的一个问题

co={{1,4},{1,3},{2,3},{2,4}}co=Join[co,Map[Reverse,co]]FindShortestTour[{1,2,3,4},Dis... co = {{1, 4}, {1, 3}, {2, 3}, {2, 4}}
co = Join[co, Map[Reverse, co]]
FindShortestTour[{1, 2, 3, 4},
DistanceFunction -> (If[MemberQ[co, {#1, #2}], 1, Infinity] &)]

我想知道If[MemberQ[co, {#1, #2}], 1, Infinity] &这个纯函数的参数是什么,{#1,#2}到底指的是什么?
展开
周永红_ZYH
2011-08-24 · TA获得超过2912个赞
知道大有可为答主
回答量:1455
采纳率:90%
帮助的人:694万
展开全部
If[MemberQ[co, {#1, #2}], 1, Infinity] &这个纯函数的参数是{#1, #2}
{#1,#2}指的是相邻的两个点。

DistanceFunction -> (If[MemberQ[co, {#1, #2}], 1, Infinity] &)
定义:相邻的两个点的距离为1,不相邻的两个点的距离为Infinity。

定义4 个点
co = {{1, 4}, {1, 3}, {2, 3}, {2, 4}}

定义8 个点
co = Join[co, Map[Reverse, co]]

FindShortestTour[{1, 2, 3, 4},...
找到一个访问 {1, 2, 3, 4} 的最短路径。
追问
这个我咋去找这个纯函数作用的对象呢,If[MemberQ[co, {#1, #2}], 1, Infinity] &,符号&放到最后了,我就不知道#1,#2到哪里去找了
追答
mathematica的说明太少,只能根据有限的例子来体会。
我认为,这个纯函数作用的对象是co中的{1, 2, 3, 4}四个点,即{1, 4}, {1, 3}, {2, 3}, {2, 4}。


co = {{1, 4}, {1, 3}, {2, 3}, {2, 4}}
co = Join[co, Map[Reverse, co]]
FindShortestTour[{1, 2, 3, 4},
DistanceFunction -> (If[MemberQ[co, {#1, #2}], 1, Infinity] &)]
co[[Last[%]]]
Graphics[Line[%]]
可以看出来。
九涵垒GS
2011-08-24 · TA获得超过1960个赞
知道小有建树答主
回答量:1108
采纳率:50%
帮助的人:1175万
展开全部
指的是作用的参数,比如f=If[MemberQ[co, {#1, #2}], 1, Infinity] &
令f函数作用于{x,y}
f/@{x,y}
则#1就是x,#2就是y
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rihina
2011-08-24
知道答主
回答量:32
采纳率:0%
帮助的人:26.9万
展开全部
co里面的一级数据,{1,4},{1,3}....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式