java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 |
---|
解题思路 |
---|
关键点在于 |
---|
代码:时间复杂度O(n) 空间复杂度O(1) |
---|
class Solution {
public int maxChunksToSorted(int[] arr) {
int m = 0,res = 0;//m表示当前块内,最大值是多少,如果和下标不对应,则无法分块排序
for(int i = 0; i < arr.length; i++){
m = Math.max(m,arr[i]);//新元素加入块中
if(m == i) res++;//如果和下标对应上,就可以多分一块
}
return res;
}
}