calcdist.m

来自「fast k-means algorithm」· M 代码 · 共 26 行

M
26
字号
function distances = calcdist(data,center)%  input: vector of data points, single center or multiple centers% output: vector of distances[n,dim] = size(data);[n2,dim2] = size(center);% Using repmat is slower than using ones(n,1)%   delta = data - repmat(center,n,1);%   delta = data - center(ones(n,1),:);% The following is fastest: not duplicating the center at allif n2 == 1    distances = sum(data.^2, 2) - 2*data*center' + center*center';elseif n2 == n    distances = sum( (data - center).^2 ,2);else    error('bad number of centers');end% Euclidean 2-norm distance:distances = sqrt(distances);% Inf-norm distance:% distances = max(abs(distances),[],2);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?