// 0769. Max Chunks To Make Sorted
class Solution {
public int maxChunksToSorted(int[] arr) {
int len = arr.length;
int leftMax = -1;
int ans = 0;
for (int i = 0; i < len; ++i) {
if (arr[i] > leftMax) leftMax = arr[i];
if (leftMax == i) ++ans;
}
return ans;
}
}
学习笔记: 今天是一道栈的题目,这道题目之前在蓝桥杯的时候给学生讲解过。 但是其实上不需要排序那么复杂的。 只需要看左边过去的数的最大值有没有和索引对上,如果刚好对上了,说明左边肯定刚刚好,可以排序好变成一节。然后再往右边数。