
1条回答 默认 最新
joel_1993 2021-09-14 10:18关注直接用欧氏距离
你好,可以用fminsearch来求欧式最短距离% 求最短距离 x0 = 2; y0 = 1; d = @(x)sqrt(((x-x0).^2+(1./x-y0).^2)); [xmin,dmin] = fminsearch(d,1);%搜索1附近的值 fprintf('最短距离=%.6f\n',dmin)结果
最短距离=0.483052然后也可以画图验证你求的结果
x = 0.3:0.01:3; y = 1./x; plot(x,y); hold on plot([xmin,x0],[1/(xmin),y0],'r-o','markerfacecolor','r') axis equal
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报