function k=mds_1(u,num) %u 是待降维的样本,每一行代表一个 n 维的样本,共 m 个样本 参
数 num 表示要降的维数
[m,n]=size(u);
D=zeros(m,m);
for i=1:m
for j=1:m
D(i,j)=(norm(u(i,:)-u(j,:)))^2;
end
end
I=eye(m);
e=ones(m,1);
J=I-(e*e')./m;
H=-0.5*J*D*J;
[p,q]=eig(H);%q 是特征值,p 是特征向量
qsort=sqrt(q);
Y=qsort(1:num,1:num)*p(:,1:num)';%降为 num 维
k=Y';