Ad
  • Custom User Avatar
  • Custom User Avatar

    The time complexity of the longest method is determined by the operations performed within the method. Let's analyze the operations step by step:

    1. Concatenation: The line String s = s1 + s2; performs concatenation of the two input strings s1 and s2. The time complexity of string concatenation in Java is O(n1 + n2), where n1 is the length of s1 and n2 is the length of s2.

    2. Distinct: The distinct() method is used on the IntStream created from the concatenated string s. The distinct() method creates a new stream with distinct elements, which involves iterating through the elements of the stream and keeping track of unique elements. The time complexity of the distinct() operation is O(n), where n is the number of characters in the concatenated string s.

    3. Sorting: The sorted() method is used to sort the characters in the stream in ascending order. The time complexity of the sorted() operation is O(n log n), where n is the number of characters in the concatenated string s.

    4. Collecting: The collect() method is used to collect the sorted characters back into a StringBuilder to form the resulting string. The collect() operation iterates through the elements in the stream and appends them to the StringBuilder. The time complexity of the collect() operation is O(n), where n is the number of characters in the concatenated string s.

    Overall, the dominant operation is the sorting step with a time complexity of O(n log n). Therefore, the time complexity of the longest method is O(n log n), where n is the total number of characters in the concatenated string s.

    It's important to note that the time complexity may vary depending on the length of the input strings and the specific implementation of the distinct() and sorted() operations. However, in this case, we can safely say that the time complexity is O(n log n) due to the sorting operation.

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    That's amazing. I managed to do it, on around 60 lines... :D

  • Custom User Avatar

    well damn now i feel dumb XD

  • Custom User Avatar
  • Custom User Avatar

    Hi, guys, what is the time complexity here?

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    Thats so awesome!

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    Thank you very much!!, in Javascript I had no problems (you know ...), but your comment was useful to do it in Java

  • Custom User Avatar

    I have the same problem and I know what's going on now.
    "a1 or a2 is empty" means two aspects,a1==null or a1 has noting.
    You have to return -1 in both of the two cases.

  • Loading more items...