首页 > 其他分享 >[Algorithm] DP - Min Number of Jumps

[Algorithm] DP - Min Number of Jumps

时间:2022-10-09 20:26:41浏览次数:48  
标签:index Min -- jumps Number array Jumps DP minNumberOfJumps

You're given a non-empty array of positive integers where each integer represents the maximum number of steps you can take forward in the array. For example, if the element at index 1 is 3, you can go from index 1 to index 2, 3, or 4.

Write a function that returns the minimum number of jumps needed to reach the final index.

Note that jumping from index i to index i + x always constitutes one jump, no matter how large x is.

Sample Input

array = [3, 4, 2, 1, 2, 3, 7, 1, 1, 1, 3]

Sample Output

4 // 3 --> (4 or 2) --> (2 or 3) --> 7 --> 3
  For each item i, check all previous items, calcuate the min jumps needed to that item.
// T: O(N ^ 2)
function minNumberOfJumps(array) {
  const jumps = array.map(_ => Infinity)
  jumps[0] = 0;

  for (let i = 1; i < array.length; i++) {
    for (let j = 0; j < i; j++) {
      if (array[j] + j >= i) {
        jumps[i] = Math.min(jumps[i], jumps[j] + 1)
      }
    }
  }

  return jumps[jumps.length - 1]
}

// Do not edit the line below.
exports.minNumberOfJumps = minNumberOfJumps;

 

标签:index,Min,--,jumps,Number,array,Jumps,DP,minNumberOfJumps
From: https://www.cnblogs.com/Answer1215/p/16773507.html

相关文章

  • TCP和UDP的区别与联系以及网络字节序和主机字节序的转换函数实践
    TCP和UDP的区别TCP是一个面向连接的、可靠的、基于字节流的传输层协议。而UDP是一个面向无连接的传输层协议。具体来分析,和 UDP 相比,TCP 有三大核心特性:面向连接:所......
  • eDP接口简介
    1.eDP背景介绍 随着显示分辨率的越来越高,传统的VGA、DVI等接口逐渐不能满足人们的视觉需求。随后就产生了以HDMI、DisplayPort为代表的新型数字接口,外部接口方......
  • 【dp优化】股票交易 玩具装箱 Watching Fireworks is Fun
    P5017NOIP2018普及组摆渡车点击查看代码#include<stdio.h>//做法:设f[i]为时刻i的最小等待时间#include<string.h>//f[i]=min{f[j]+i(cnt[i]-cnt[j])-(sum[i]-......
  • Jumpserver 数据迁移
    安装完成后配置文件在/opt/jumpserver/config/config.txt记录SECRET_KEY和BOOTSTRAP_TOKEN#cat/opt/jumpserver/config/config.txt|egrep"SECRET_KEY|BOOTSTRAP_TO......
  • 2020辽宁省赛 xor(前缀和DP 异或性质)
    2020辽宁省赛xor题意:​ 现在有一个长度为n的数组a。现在要将a拆分成若干个连续的子数组,要求每个连续的数组异或和都为x。请问有多少种拆分的方案。思路:​ 容易推出转......
  • TCP与UDP的联系与区别(以及网络字节序与主机字节序的转换函数实践)
    TCP与UDP的联系TCP:是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。UDP:是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把......
  • 关于TCP和UDP的联系与区别以及网络字节序和主机字节序的转换函数实践
    1.TCP和UDP的相同点:TCP和UDP都是在网络层,都是传输层协议,都能都是保护网络层的传输,双方的通信都需要开放端口。2.TCP和UDP的不同点:TCP传输协议,是一种面向连接的、可靠的......
  • 状压dp刷题记录【持续更新】
    前言:许多算法的状态数并不支持其在多项式时间内运行完成。比如TSP问题这种大部分为NP-Hard的问题。在数据范围缩小的前提下(例如\(n\leq21\)),不妨将状态数压缩成二进制情......
  • TCP与UDP的联系与区别
     TCP和UDP是TCP/IP体系中运输层的两个协议。 TCP是传输控制协议,旨在适应支持多网络应用的分层协议层次结构。连接到不同但互连的计算机通信网络的主计算机中的成对进......
  • TCP与UDP的联系与区别
    TCP与UDP是什么?TCP协议和UDP协议都是属于TCP/IP协议簇中的协议,且都是传输层中的协议。 TCP协议TCP协议是面向连接的协议。TCP传输有三个步骤:建立连接、传输数据、关闭......