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

甘肃网站建设方案及案例上海优化网站方法

甘肃网站建设方案及案例,上海优化网站方法,云主机如何建网站,行业前10的网站建设公司大家好,我是晴天学长,树和dfs的结合,其邻接表的存图方法也很重要。需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪 1) .串门 2) .算法思路 串门(怎么存图很关键&#xf…

大家好,我是晴天学长,树和dfs的结合,其邻接表的存图方法也很重要。需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪


1) .串门

在这里插入图片描述


2) .算法思路

串门(怎么存图很关键)
用双链表存
1.找到最长的那段路(树的最长直径)
2.答案=(总和)*2-最长那段路。

1.接受数据
2.建立标记数组,存图
3.从1开始找最大路径,并更新最大路径的点
4.从最大路径的点开始出发,再找最大路径
5.答案


3).算法步骤

1.读取输入的节点数量 n。
2.创建一个布尔数组 vis,用于记录节点的访问状态。
3.初始化变量 total 为节点数量 n。
4.将 n 减 1,并创建一个链表列表 list,用于存储图的边关系。
5.循环 n 次,读取边的起点 u、终点 v 和权重 w。
6.将路径和增加 w + w。
7.在 list 中的起点 u 处添加边的信息 [v, w]。
8.在 list 中的终点 v 处添加边的信息 [u, w]。
9.调用 dfs 方法进行第一次深度优先搜索,参数为起点 1,访问状态数组 vis 和初始路径和 0。
10.重置访问状态数组 vis 为初始状态,最大路径和 maxsum 为 0。
11.调用 dfs 方法进行第二次深度优先搜索,参数为节点编号 nodeindex,访问状态数组 vis 和初始路径和 0。
12.计算最终结果,输出 totalsum - maxsum。


4). 代码实例

package LanQiaoTest.DFS;import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;public class 串门 {static List<List<int[]>> list = new ArrayList<>();static long maxsum = 0;static int nodeindex = 0;static long totalsum = 0;public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();boolean[] vis = new boolean[n + 10];int total = n ;n--;//建立链表for (int i = 0; i < n + 10; i++) {list.add(new ArrayList<>());}//接受数据,存图(树)while (n > 0) {int u = scanner.nextInt();int v = scanner.nextInt();int w = scanner.nextInt();//添加路径和totalsum += w + w;// 两个路径都可以走list.get(u).add(new int[]{v, w});list.get(v).add(new int[]{u, w});n--;}//开始第一次的dfsdfs(1, vis, 0);//第一次结束,开始第二次vis = new boolean[total + 10];maxsum = 0;// 开始找第二次dfs(nodeindex, vis, 0);System.out.println(totalsum - maxsum);}public static void dfs(int start, boolean[] vis, long sum) {//避免往回走vis[start] = true;if (sum > maxsum) {maxsum = sum;nodeindex = start;}//开枝散叶for (int i = 0; i < list.get(start).size(); i++) {int[] temp = list.get(start).get(i);//没有标记,就走下去if (!vis[temp[0]]) {dfs(temp[0], vis, sum+temp[1]);}}//也可以不回溯,因为跟随着的是返回结果,不会在重复的走下去了,回溯也行。vis[start]=false;}
}

4).总结

  • 图(树的)正确遍历。
  • dfs(回溯)

试题链接:

http://www.ds6.com.cn/news/81239.html

相关文章:

  • 淮安做微信网站整站seo定制
  • 莱芜人才网最新招聘深圳关键词优化平台
  • 做企业网站的网站推广常用的方法
  • 网站建设的目标客户网站建设推广公司
  • 如何让自己做的网页有网站思亿欧seo靠谱吗
  • 做家常菜的网站哪个好seo合作代理
  • 亚洲购物网站排名可以商用的电视app永久软件
  • 建设视频网站的视频源网页设计实训报告
  • 网站素材设计深圳高端网站制作公司
  • zencart 官方网站站长工具的使用seo综合查询运营
  • 做网站公司能赚钱吗2022网站快速收录技术
  • 网站运维可以做哪些优化课程体系
  • vs2013做的网站天天网站
  • 国外网站的分析工具有哪些竞价推广外包
  • 网站设计公司 武汉网络平台营销
  • 实验室网站建设谷歌seo软件
  • 西安有哪些做网站建设的公司好b2b免费发布平台
  • 企业网站的建设 摘要百度代发收录
  • 一流的网站建设关键词提取工具app
  • 做网站是怎么赢利的百度怎么发布自己的广告
  • 大连网站制作案例百度竞价代理商
  • 政府门户网站建设情况汇报材料免费公司网址怎么注册
  • 网站建设 定制商城 小程序开发模板建站教程
  • 深圳建网站兴田德润很好腾讯会议价格
  • 国内做心理咨询师培训出名的网站每日军事新闻
  • 从做系统后以前的网站打不开了怎么办理今天发生了什么重大新闻
  • 网站手机端首页用什么软件做专业的网站优化公司
  • 女性网站模板网络营销的四大要素
  • 绵阳网站建设新东方在线网上课程
  • 我做的网站搜不到百度推广价格表