題解 需要排序的子陣列長度(鋸齒形陣列)

2021-09-10 08:37:59 字數 766 閱讀 9546

需要排序的子陣列

題目描述

給定乙個無序陣列arr,求出需要公升序排序的最短子陣列長度

如輸入:arr = ,返回4,因為只有需要排序

源**

public

class 需要排序的最短子陣列長度

;int max = arr[0]

;int toleft =0;

// go to right

// find where arr[i] < left side

int toright =-1

;for

(int i =

0; i < arr.length; i++

)else

}// go to left

// find where arr[i] > right side

int min = arr[arr.length-1]

;for

(int i = arr.length-

1; i >=

0; i--

)else

}// get the ans

system.out.

println

(toright - toleft +1);}}

演算法 需要排序的最短子陣列長度

給定乙個無序陣列,求出需要排序的最短子陣列的長度。例如 arr 返回4,因為只有 5,3,4,2 需要排序。解決這個問題可以在時間複雜度為o n 額外空間複雜度為o 1 完成。初始化變數nominindex 1,從右向左遍歷,便利的過程記錄右側出現過的數的最小值,記為min。假設當前數為arr i ...

陣列 長度最小的子陣列

給定乙個含有n個正整數的陣列和乙個正整數s 找出該陣列中滿足其和 s的長度最小的連續子陣列。如果不存在符合條件的連續子陣列,返回 0。示例 輸入 s 7,nums 2,3,1,2,4,3 輸出 2解釋 子陣列 4,3 是該條件下的長度最小的連續子陣列。高階 如果你已經完成了o n 時間複雜度的解法,...

2 1 需排序的最短子陣列長度

題目描述 對於乙個無序陣列a,請設計乙個演算法,求出需要排序的最短子陣列的長度。給定乙個整數陣列a及它的大小n,請返回最短子陣列的長度。測試樣例 1,5,3,4,2,6,7 7 返回 4 1 2 這個題在牛客網上的講解我感覺是有點問題的,3因為預設了公升序排序!4如下實現對陣列 8,7,6,5,4,...