当前位置: 首页 > news >正文

郑州网站制作-中国互联长沙百度搜索排名

郑州网站制作-中国互联,长沙百度搜索排名,网站开发人员工资,wordpress 网址导航 主题基站维修工程师&#xff08;200分&#xff09; 小王是一名基站维护工程师&#xff0c;负责某区域的基站维护。 某地方有n个基站(1<n<10)&#xff0c;已知各基站之间的距离s(0<s<500)&#xff0c;并且基站x到基站y的距离&#xff0c;与基站y到基站x的距离并不一定会…

基站维修工程师(200分)

小王是一名基站维护工程师,负责某区域的基站维护。
某地方有n个基站(1<n<10),已知各基站之间的距离s(0<s<500),并且基站x到基站y的距离,与基站y到基站x的距离并不一定会相同。

小王从基站1出发,途径每个基站1次,然后返回基站1,需要请你为他选择一条距离最短的路线。

>>输入描述

站点数n和各站点之间的距离(均为整数)。如:

3 {站点数}
0 2 1 {站点1到各站点的路程)
1 0 2 (站点2到各站点的路程}
2 1 0 {站点3到各站点的路程}

>>输出描述

最短路程的数值

>>示例1

输入

3
0 2 1
1 0 2
2 1 0

输出

3

思路: 

目标是解决典型的旅行商问题(TSP, Travelling Salesman Problem),即在一个给定的城市网络中,找到一条从起点城市出发,经过每个城市一次并最终返回起点的路径,使得路径的总距离最短。算法使用了递归(深度优先搜索)结合状态标记来遍历所有可能的路径,并通过回溯法不断比较最短路径。
输入:给定一个 size x size 的二维数组 arr,其中 arr[i][j] 表示城市 i 到城市 j 的距离。
输出:求解从城市0出发,经过每个城市一次并返回的最短路径长度。

 

步骤:
数据输入:读取城市数 size 和城市之间的距离矩阵 arr。
递归函数 recur:递归尝试从一个城市访问未访问过的下一个城市,记录当前路径长度,并使用状态数组 st 标记某个城市是否已经访问过。
状态回溯:递归探索完某条路径后,返回上一步,尝试其他未访问过的城市,最终比较得到最短路径。
结果输出:输出所有路径中的最小总距离。

代码段如下:

package com.rich.huawei.od_test;import java.util.Scanner;/*** @description* @Title Test01* @Author tang rui qi* @Date 2024/10/14 5:17*/
public class Test03 {static int res; // 用于保存最短路径的总距离// 递归函数// u: 当前访问的第几个城市// pre: 上一个访问的城市编号// temRes: 当前路径的总距离// size: 城市的总数// arr: 城市之间的距离矩阵// st: 访问状态数组,标记某个城市是否被访问过static void recur(int u, int pre, int temRes, int size, int[][] arr, boolean[] st) {// 如果已经访问完所有城市并回到起点城市if (u == size - 1) {// 将当前路径的总距离与最小距离进行比较,更新最小距离res = Math.min(res, temRes + arr[pre][0]);return;}// 遍历每个城市,寻找下一个未访问过的城市for (int i = 1; i < size; ++i) {if (st[i]) { // 如果该城市已被访问,则跳过continue;}st[i] = true; // 标记该城市为已访问// 递归访问下一个城市,并累加当前路径的距离recur(u + 1, i, temRes + arr[pre][i], size, arr, st);st[i] = false; // 回溯时将该城市重置为未访问状态}}public static void main(String[] args) {Scanner cin = new Scanner(System.in);int size = cin.nextInt(); // 读取城市的总数res = 0x3f3f3f3f; // 初始化最短路径为一个很大的值int[][] arr = new int[size][size]; // 城市之间的距离矩阵boolean[] st = new boolean[size]; // 访问状态数组// 读取距离矩阵的值for (int x = 0; x < size; ++x)for (int y = 0; y < size; ++y) arr[x][y] = cin.nextInt();// 从城市0开始递归搜索recur(0, 0, 0, size, arr, st);// 输出最短路径的总距离System.out.println(res);}}

http://www.yayakq.cn/news/645726/

相关文章:

  • 网站维护费用一年多少建设部网站注销一级建造师
  • 自己开一个网站要多少钱wordpress动画插件下载
  • seo网站合作led灯散热片技术支持 东莞网站建设
  • 软件中心下载安装百度seo关键词排名价格
  • 制作个人网站的软件简网app工场官网网址
  • 无锡哪个网站好wordpress后台教程
  • 铜山微网站开发广州淘宝网站建设
  • 网站页面设计欣赏模板深圳出行最新消息
  • 绥化安达网站建设宜兴做网站的公司有哪些
  • 国外有哪做交互设计网站网站制作报价表
  • 徐州本地网站新零售社交电商系统
  • 网站访问量 wordpress百度百家官网入口
  • 网站建设方案书封面外贸流程英语
  • 贵州省住房和城乡建设厅查询网站首页深圳技术支持 骏域网站建设
  • 网站前端是什么哪个网站用织梦做的
  • 中山好的网站建设公司app制作平台哪家好
  • 支付网站建设费用做账微信小程序怎么创建店铺
  • 扁平化设计 科技感网站素材经典重庆
  • 卖域名的网站要怎么做国内网站排名
  • 台州市建设监理协会网站程序员必备软件
  • 律师事务所东莞网站建设wordpress 置顶不重复
  • 杭工e家app是哪个网站做的5条国内最新新闻
  • 做网站需要公司么怎样做php网站
  • 商城网站具体需求北京网络营销是什么
  • 上海icp新增网站app开发制作的措施
  • ip段访问网站代码南宁建站服务公司之
  • 淮安专业做网站的公司金启网站建设
  • 优化网站公司外包学完js了可以做哪些网站
  • 制作企业网站素材视频网站建设域名费
  • 企业网站宣传册应该哪个部门做百度app关键词优化