zoukankan      html  css  js  c++  java
  • 数组:[1266访问所有点的最小时间 ]

    这是我的leetcode第一题,说实话当时看题没看懂,然后看了看题解,还是没懂,后来又琢磨题的输入输出,思考了会儿才明白题的意思【写到此处面红耳赤】

    大致题意:二维数组中的几组数字,其中每组是两个数字(可理解对应了x,y轴),从第一组数字依次变化到最后一组,一共最少需要增减1多少次(秒)。

    举例:

    输入:points = [[1,1],[3,4],[-1,0]]
    输出:7
    解释:一条最佳的路径是: [1,1] -> [2,2] -> [3,3] -> [3,4] -> [2,3] -> [1,2] -> [0,1] -> [-1,0]
    从 [1,1] 到 [3,4] 需要 3 秒
    从 [3,4] 到 [-1,0] 需要 4 秒
    一共需要 7 秒

    第一次代码:

     1 import java.lang.*;
     2 public class Solution {
     3     public static int minTimeToVisitAllPoints(int[][] points) {
     4         int num=0;
     5         for(int i=0;i<points.length-1;i++){
     6             System.out.println("~~~~~~"+i);
     7             int x1=points[i][0];
     8             int y1=points[i][1];
     9             int x2=points[i+1][0];
    10             int y2=points[i+1][1];
    11             System.out.println("x1:"+x1+",y1:"+y1);
    12             System.out.println("x2:"+x2+",y2:"+y2);
    13             num+=Math.max(Math.abs(points[i][1]-points[i+1][1]),Math.abs(points[i][0]-points[i+1][0]));
    14         }
    15         return num;
    16     }
    17     public static void main(String[] args){
    18     int [][]arr=new int[][]{{1,1},{3,4},{-1,0}};
    19     int [][]arr1=new int[][]{{3,2},{-2,2}};
    20     int res=minTimeToVisitAllPoints(arr);
    21     System.out.print(res);
    22     }
    23 }

    最终代码:

    1 class Solution {
    2     public int minTimeToVisitAllPoints(int[][] points) {
    3         int num=0;
    4         for(int i=0;i<points.length-1;i++){
    5             num+=Math.max(Math.abs(points[i][1]-points[i+1][1]),Math.abs(points[i][0]-points[i+1][0]));
    6         }
    7         return num;
    8     }
    9 }

    总结:

    最终代码在执行用时和内存消耗上都有提升:循环内的打印语句延长了执行用时,循环内变量的声明增加了内存消耗。

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/minimum-time-visiting-all-points

  • 相关阅读:
    BZOJ1051 [HAOI2006]受欢迎的牛 强连通分量缩点
    This blog has been cancelled for a long time
    欧拉定理、费马小定理及其拓展应用
    同余基础
    [LeetCode] 73. Set Matrix Zeroes
    [LeetCode] 42. Trapping Rain Water
    [LeetCode] 41. First Missing Positive
    [LeetCode] 71. Simplify Path
    [LeetCode] 148. Sort List
    [LeetCode] 239. Sliding Window Maximum
  • 原文地址:https://www.cnblogs.com/fangyanr/p/11983300.html
Copyright © 2011-2022 走看看