Remove unsorted/outlier elements in nearly-sorted array
Given an array like [15, 14, 12, 3, 10, 4, 2, 1] . How can I determine which elements are out of order and remove them (the number 3 in this case). I don't want to sort the list, but detect outliers and remove them. Another example: [13, 12, 4, 9, 8, 6, 7, 3, 2] I want to be able to remove #4 and #7 so that I end up with: [13, 12, 9, 8, 6, 3, 2] There's also a problem that arises when you have this scenario: [15, 13, 12, 7, 10, 5, 4, 3] You could either remove 7 or 10 to make this array sorted. In general, the problem I'm trying to solve, is that given a list of numerical readings (some could