Sort and Star

kata programming

مساله:

به شما لیستی از رشته ها داده می شود. شما باید این لیست را بر اساس ASCII مرتب سازی کنید و اولین را برگردانید.

مقدار برگشتی باید رشته باشد و بین هر یک از حروف رشته عبارت *** را بگذارید.


Description:

You will be given a vector of strings. You must sort it alphabetically (case-sensitive, and based on the ASCII values of the chars) and then return the first value.

The returned value must be a string, and have "***" between each of its letters.

You should not remove or add elements from/to the array.


public class SortAndStar {

    public static String twoSort(String[] s) {
        java.util.Arrays.sort(s);

        return String.join("***",s[0].split(""));
    }
}
import java.util.Arrays;
public class SortAndStar {

  public static String twoSort(String[] s) {
    return String.join("***", Arrays.stream(s).sorted().findFirst().orElse("").split(""));
  }
}
import java.util.Arrays;

public class SortAndStar {

  public static String twoSort(String[] s) {
    return Arrays.stream(Arrays.stream(s).sorted().findFirst().get().split("")).reduce((p, c) -> p + "***" + c).get();
  }
}
import java.util.*;
public class SortAndStar {

  public static String twoSort(String[] s) {
    Arrays.sort(s);
    return s[0].replaceAll("([a-zA-Z])", "***$1").substring(3);
  }
}
import java.util.*;
import java.util.stream.*;

public class SortAndStar {

  public static String twoSort(String[] s) {
    Arrays.sort(s);
    return s[0].chars()
      .mapToObj(value -> String.valueOf((char) value))
      .collect(Collectors.joining("***"));
  }
}
import java.util.Arrays;

import org.apache.commons.lang3.StringUtils;

public class SortAndStar {

  public static String twoSort(String[] s) {
    return StringUtils.join(Arrays.stream(s).sorted().findFirst().get().split(""), "***");
  }
}

دیدگاهتان را بنویسید