From 3cb6bfe0944543660117781549db807905b5476a Mon Sep 17 00:00:00 2001 From: "facat@lab.com" Date: Mon, 8 Dec 2014 11:44:43 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9F=A2=E9=87=8F=E5=8C=96=E7=AE=97=E5=88=B0S?= =?UTF-8?q?=E9=9B=86=E5=90=88=E7=9A=84=E6=9C=80=E7=9F=AD=E8=B7=9D=E7=A6=BB?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: facat@lab.com --- main.m | 52 ++++++++-------------------------------------------- 1 file changed, 8 insertions(+), 44 deletions(-) diff --git a/main.m b/main.m index eca3f4d..d9123b4 100644 --- a/main.m +++ b/main.m @@ -37,15 +37,6 @@ for clusterI=1:clusterN-1 end d=data(:,J); %寻找最短距离 - minD=1e20; -% for D=1:length(SetS)%between j and the closest object in S. -% % distance=sum((d-data(:,SetS(D))).^2).^.5; -% distance=metricFun( d,data(:,SetS(D)) ); -% if distance1e-5 || abs(smin2D-min2D)>1e-5 - fdf=0; - end -% minD=sminD; -% minD -% sminD -% min2D=smin2D; - - + matDistance=repmat(d,1,length(SetS)); + minD=matDistance-data(:,SetS); + minD=diag(minD'*minD).^.5; + minD_t=min(minD); + minD(minD==minD_t)=1e20; + min2D=min(minD); + minD=minD_t; % distanceIJ=sum((d-data(:,cadUSetS(H))).^2).^.5;%S(I)已经等于U(H) distanceIJ=metricFun( d,data(:,cadUSetS(H)) ); % distanceHJ=sum((d-data(:,cadSetS(I))).^2).^.5; @@ -125,7 +89,7 @@ while 1 end if abs(distanceIJ-minD)<1e-5 Kjih=min([distanceHJ,min2D])-minD; - elseif distanceIJ