欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

歐氏距離java的代碼,歐幾里得算法java

歐氏距離怎么求?用matlab,謝謝

直接把坐標(biāo)帶進(jìn)去你采用的距離公式就行了。

創(chuàng)新互聯(lián)2013年至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元扶綏做網(wǎng)站,已為上家服務(wù),為扶綏各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575

最簡(jiǎn)單的是二維的的歐式距離公式。舉個(gè)例子吧

a=[1,2];

b=[2,1];

juli=sqrt((a(1)-b(1))^2+(a(2)-b(2))^2);

java 求兩點(diǎn)間距離的問題

兩維空間里,兩點(diǎn)間的距離公式是L = sqrt((x1-x2)^2+(y1-y2)^2);

多維空間的公式照推。

假設(shè)文件中數(shù)據(jù)如下:

3

2,5,6

6,8,5

則對(duì)應(yīng)的代碼如下:

BufferedReader reader = new BufferedReader(new FileReader("C:/test.txt"));

//獲取維數(shù)

String s1 = reader.readLine();

num = Integer.parseInt(s1);

//獲取第一個(gè)坐標(biāo)的信息,將其坐標(biāo)信息保存在數(shù)組中

String s2 = reader.readLine();

String[]str2 = s2.split(",");

int p1[] =new int[num];

for(int i=0;inum;i++) {

p1[i] = Integer.parseInt(str2[i]);

}

//獲取第二個(gè)坐標(biāo)的信息,同上,略過

……

//將對(duì)應(yīng)坐標(biāo)之差保存到另外一個(gè)數(shù)組

int a []=new int[num];

for(int i = 0;inum;i++)

a[i] = p1[i]-p2[i];

//求這個(gè)數(shù)組各元素的平方和

int sum = 0;

for(int i=0;inum;i++) {

sum += a[i]*a[i];

}

求距離

int L = Math.sqrt(sum);

以上代碼直接在瀏覽器中完成,可能會(huì)有編碼問題,樓主細(xì)察

用java解決tsp問題用什么算法最簡(jiǎn)單

package noah;

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

public class TxTsp {

private int cityNum; // 城市數(shù)量

private int[][] distance; // 距離矩陣

private int[] colable;//代表列,也表示是否走過,走過置0

private int[] row;//代表行,選過置0

public TxTsp(int n) {

cityNum = n;

}

private void init(String filename) throws IOException {

// 讀取數(shù)據(jù)

int[] x;

int[] y;

String strbuff;

BufferedReader data = new BufferedReader(new InputStreamReader(

new FileInputStream(filename)));

distance = new int[cityNum][cityNum];

x = new int[cityNum];

y = new int[cityNum];

for (int i = 0; i cityNum; i++) {

// 讀取一行數(shù)據(jù),數(shù)據(jù)格式1 6734 1453

strbuff = data.readLine();

// 字符分割

String[] strcol = strbuff.split(" ");

x[i] = Integer.valueOf(strcol[1]);// x坐標(biāo)

y[i] = Integer.valueOf(strcol[2]);// y坐標(biāo)

}

data.close();

// 計(jì)算距離矩陣

// ,針對(duì)具體問題,距離計(jì)算方法也不一樣,此處用的是att48作為案例,它有48個(gè)城市,距離計(jì)算方法為偽歐氏距離,最優(yōu)值為10628

for (int i = 0; i cityNum - 1; i++) {

distance[i][i] = 0; // 對(duì)角線為0

for (int j = i + 1; j cityNum; j++) {

double rij = Math

.sqrt(((x[i] - x[j]) * (x[i] - x[j]) + (y[i] - y[j])

* (y[i] - y[j])) / 10.0);

// 四舍五入,取整

int tij = (int) Math.round(rij);

if (tij rij) {

distance[i][j] = tij + 1;

distance[j][i] = distance[i][j];

} else {

distance[i][j] = tij;

distance[j][i] = distance[i][j];

}

}

}

distance[cityNum - 1][cityNum - 1] = 0;

colable = new int[cityNum];

colable[0] = 0;

for (int i = 1; i cityNum; i++) {

colable[i] = 1;

}

row = new int[cityNum];

for (int i = 0; i cityNum; i++) {

row[i] = 1;

}

}

public void solve(){

int[] temp = new int[cityNum];

String path="0";

int s=0;//計(jì)算距離

int i=0;//當(dāng)前節(jié)點(diǎn)

int j=0;//下一個(gè)節(jié)點(diǎn)

//默認(rèn)從0開始

while(row[i]==1){

//復(fù)制一行

for (int k = 0; k cityNum; k++) {

temp[k] = distance[i][k];

//System.out.print(temp[k]+" ");

}

//System.out.println();

//選擇下一個(gè)節(jié)點(diǎn),要求不是已經(jīng)走過,并且與i不同

j = selectmin(temp);

//找出下一節(jié)點(diǎn)

row[i] = 0;//行置0,表示已經(jīng)選過

colable[j] = 0;//列0,表示已經(jīng)走過

path+="--" + j;

//System.out.println(i + "--" + j);

//System.out.println(distance[i][j]);

s = s + distance[i][j];

i = j;//當(dāng)前節(jié)點(diǎn)指向下一節(jié)點(diǎn)

}

System.out.println("路徑:" + path);

System.out.println("總距離為:" + s);

}

public int selectmin(int[] p){

int j = 0, m = p[0], k = 0;

//尋找第一個(gè)可用節(jié)點(diǎn),注意最后一次尋找,沒有可用節(jié)點(diǎn)

while (colable[j] == 0) {

j++;

//System.out.print(j+" ");

if(j=cityNum){

//沒有可用節(jié)點(diǎn),說明已結(jié)束,最后一次為 *--0

m = p[0];

break;

//或者直接return 0;

}

else{

m = p[j];

}

}

//從可用節(jié)點(diǎn)J開始往后掃描,找出距離最小節(jié)點(diǎn)

for (; j cityNum; j++) {

if (colable[j] == 1) {

if (m = p[j]) {

m = p[j];

k = j;

}

}

}

return k;

}

public void printinit() {

System.out.println("print begin....");

for (int i = 0; i cityNum; i++) {

for (int j = 0; j cityNum; j++) {

System.out.print(distance[i][j] + " ");

}

System.out.println();

}

System.out.println("print end....");

}

public static void main(String[] args) throws IOException {

System.out.println("Start....");

TxTsp ts = new TxTsp(48);

ts.init("c://data.txt");

//ts.printinit();

ts.solve();

}

}

知道一個(gè)數(shù)利用歐式距離用java如何產(chǎn)生下一個(gè)數(shù)

我看了三遍 沒太清楚你的意思 你知道一個(gè)數(shù) 利用歐氏距離 用java產(chǎn)生下一個(gè)數(shù)。

該逗號(hào)還是逗號(hào),改分句還是分句,程序的世界,本來就需要很清楚的闡述問題。

用java寫:求地球上任意兩個(gè)點(diǎn)之間的距離,知道這兩個(gè)點(diǎn)的經(jīng)緯度

距離可以用r*arccos[cos(y1)*cos(y2)*cos(x1x2)+sin(y1)*sin(y2)]來算

r是地球半徑6370km,x是經(jīng)度,y是緯度

注意角度單位的轉(zhuǎn)換。Math類里的sin和cos函數(shù)的參數(shù)是以弧度為單位的角度,所以x1、x2、y1、y2要用弧度表示,但一般經(jīng)緯度都是用角度表示(如X1=120 東經(jīng)120度)就要化成弧度(x1*Pi/180)

而acos函數(shù)返回值正好是以弧度為單位的,剛好符合要求

如果你的代碼里的lat1、lat2、lon1、lon2單位是角度,可以這么改

double radius=6371000;

double distance=radius*Math.acos((Math.cos(lat2*Math.PI/180)*Math.cos(lat2*Math.PI/180)*Math.cos(lon1*Math.PI/180-lon2*Math.PI/180)+Math.sin(lat1*Math.PI/180)*Math.sin(lat2*Math.PI/180)));

我算出來是903.9千米

本文標(biāo)題:歐氏距離java的代碼,歐幾里得算法java
文章分享:http://aaarwkj.com/article28/dsspecp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、微信小程序關(guān)鍵詞優(yōu)化、面包屑導(dǎo)航、做網(wǎng)站、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)
一区二区三区高清人妻| 亚洲欧洲日本在线天堂| 国产一边打电话一边操| 中文字幕九七精品乱码| 一区二区中文字幕精品| 日韩欧美国产一区二区精品| 久久香蕉国产线看观看av| 日本特黄特黄录像在线| 午夜性生活免费观看视频| 一区二区三区三级视频| 日本在线一区二区视频麻豆 | 日本欧美自拍偷拍高清| 国产视频专区一区二区| 人妻中文字幕av资源| 蜜臀在线免费观看黄片视频| 不卡视频在线免费观看| 亚洲熟女午夜毛片av毛片| 蜜臀久久精品亚洲一区| av高清不卡一区二区免费在线| 天堂网一区二区三区四区| 亚洲视频在线男人天堂| 日本一区二区三级在线观看| 日韩精品中文一区二区| 大龄熟妇丰满有水多毛浓| 五月婷婷六月丁香综合激情| 国产精品日韩伦理一区二区| 成人午夜激情在线免费观看| 日韩中字伦理熟妇人妻| 97免费在线视频观看| 蜜桃午夜精品一区二区三区| 男女在线视频网站免费| 国内久久婷婷综合五月趴| 日本经典三级在线视频| 一区二区三区在线观看日本视频 | 国产黄片一区二区不卡| 日本韩国欧美一区在线| 欧美日韩三级国产在线| 日本韩国视频一区二区| 亚洲永久精品天码野外| 亚洲精品国产av一区二区三区| 日韩三级视频一区二区|