美文网首页
每日一练114——Java Lario和Muigi管道问题(8k

每日一练114——Java Lario和Muigi管道问题(8k

作者: 砾桫_Yvan | 来源:发表于2018-11-27 10:38 被阅读0次

    题目

    Issue:看起来像一些流氓管道工和他的兄弟,一直跑来跑去并再次损坏你的舞台。

    pipes连接你同级别的阶段,需要在您收到较多投诉之前完成。每个管道都应该连接,因为级别提升,您可以假设第一个索引之后的序列中的每个数字都将大于前一个,并且不会有重复。

    Task:给定一个数组/列表numbers,返回列表,使每个索引的值增加1,直到达到最大值。

    Example:

    Input: 1,3,5,6,7,8

    Output: 1,2,3,4,5,6,7,8

    解题

    My:

    public class Kata {
      public static int[] pipeFix(int[] numbers) {
        int start = numbers[0];
        int len = numbers[numbers.length-1]-start+1;
        int[] arrs = new int[len];
        for (int i = 0; i < len; i++) {
          arrs[i] = start++;
        }
        return arrs;
      }
    }
    

    Other:

    import java.util.stream.IntStream;
    
    public class Kata {
      public static int[] pipeFix(int[] numbers) {
        return IntStream.rangeClosed(numbers[0], numbers[numbers.length - 1]).toArray();
      }
    }
    
    public class Kata {
      public static int[] pipeFix(int[] numbers) {
        // Fix the pipes!
        int min = numbers[0];
        int max = numbers[numbers.length - 1];
        
        int newLength = max - min + 1;
        int[] result = new int[newLength];
        
        for(int x = 0; x < newLength; x++) {
          result[x] = min;
          min+=1;
        }
        
        return result;
        
      }
    }
    

    后记

    我在考虑要不要认真学学IntStream这一类的函数。

    相关文章

      网友评论

          本文标题:每日一练114——Java Lario和Muigi管道问题(8k

          本文链接:https://www.haomeiwen.com/subject/mluwqqtx.html