后端开发
线性时间复杂度 标签描述

题目 见上一篇: 较难算法美丽塔时间复杂度O(n) 时间复杂度 O(n) 分析 接着上篇。从左向右依次处理Left,处理Left[i]时,从右向左寻找第一个符合maxHeights[j]<maxHeights[i]的j。如果j1<j2,且maxHeights[j1]>=maxHeights[j2],那j1永远不会被选到。比如:{1,3,2,4,5},由于2在3右边,且小于3,则无论如何不会选中3。{1,2,2.....},后面无论有什么数,都不会选中第一个2,要么是其他数,要么是第二个2。可以用栈实现,入栈maxHeights[i]之前,先出栈大于等于maxHei...