diff --git a/src/main/java/com/bawei/demo5.java b/src/main/java/com/bawei/demo5.java deleted file mode 100644 index 685d157..0000000 --- a/src/main/java/com/bawei/demo5.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.bawei; - -import java.util.Arrays; - -/** - * @author : lpg - * @ClassName : demo5 - * @Description : 描述说明该类的功能 - * @createTime : 2023/10/5 11:35 - */ -public class demo5 { - public static void main(String[] args) { - //定义需要定义的数组数据 - int[] arr={2,3,1,2,1,2,3,2,5}; - //调用返回最小步数的方法 - int i=returnMinNum(arr); - //输出最终实现的步数 - System.out.println(i); - } - - private static int returnMinNum(int[] arr) { - //获取数组的长度 - int length = arr.length; - //根据长度定义新集合 - int[] ints = new int[length]; - //在这段代码中,Arrays.fill(dp, Integer.MAX_VALUE)将数组ints中的每个元素都赋为Integer.MAX_VALUE,即整型变量能表示的最大值。 - Arrays.fill(ints,Integer.MAX_VALUE); - //从零开始进行 - ints[0]=0; - //for (int i = 1; i < length; i++) {:这是外层循环,用于遍历数组中的每个元素。 - for (int i = 1; i < length; i++) { - //for (int j = 0; j < i; j++) {:这是内层循环,用于遍历当前元素之前的所有元素。 - for (int j = 0; j < i; j++) { - //if(j+arr[j]>=i){:这是一个条件判断语句,用于检查是否满足特定条件。具体来说,它判断当前位置j加上对应的值arr[j]是否大于等于i。 - if(j+arr[j]>=i){ - //ints[i]=Math.min(ints[i],ints[j]+1);:这是一个赋值语句,用于更新ints数组中索引为i的元素的值。具体来说,它将ints[i]的值与ints[j]+1的值进行比较,并将较小的值赋给ints[i]。 - ints[i]=Math.min(ints[i],ints[j]+1); - } - } - } - //返回最小步数 - return ints[length-1]; - } -}