FastPrepFastPrep
Problem Brief

Min Deletions to Almost Sorted

OA

An array of integers is almost sorted if at most one element can be deleted from it to make it perfectly sorted, ascending. For example, arrays [2, 1, 7], [13], [9, 2] and [1, 5, 6] are almost sorted because they have 0 or 1 elements out of place. The arrays [4, 2, 1], [1, 2, 6, 4, 3] are not because they have more than one element out of place. Given an array of n unique integers, determine the minimum number of elements to remove so it becomes almost sorted.

Function Description

Complete the function minDeletions in the editor.

minDeletions has the following parameter(s):

  1. int arr[n]: an unsorted array of integers

Returns

int: the minimum number of items that must be deleted to create an almost sorted array

1Example 1

Input
arr = [3, 4, 2, 5, 1]
Output
1
Explanation

Remove 2 to get arr' = [3, 4, 5, 1] or remove 7 to get arr' = [3, 4, 2, 5], both of which are almost sorted. The minimum number of elements that must be removed in this case is 1.

Constraints

Limits and guarantees your solution can rely on.

  • 1 ≤ n ≤ 105
  • 1 ≤ arr[i] ≤ 109
  • All elements of arr are distinct.
public int minDeletions(int[] arr) {
  // write your code here
}
Input

arr

[3, 4, 2, 5, 1]

Output

1

Sign in to submit your solution.