modify code

master
algorithmzuo 4 years ago
parent fe22b8cb83
commit d43c75ff2d

@ -19,6 +19,31 @@ public class Code05_CountSubmatricesWithAllOnes {
}
// 比如
// 1
// 1
// 1 1
// 1 1 1
// 1 1 1
// 1 1 1
//
// 2 .... 6 .... 9
// 如上图假设在6位置1的高度为6
// 在6位置的左边离6位置最近、且小于高度6的位置是22位置的高度是3
// 在6位置的右边离6位置最近、且小于高度6的位置是99位置的高度是4
// 此时我们求什么?
// 1) 求在3~8范围上必须以高度6作为高的矩形有几个
// 2) 求在3~8范围上必须以高度5作为高的矩形有几个
// 也就是说,<=4的高度一律不求
// 那么1) 求必须以位置6的高度6作为高的矩形有几个
// 3..3 3..4 3..5 3..6 3..7 3..8
// 4..4 4..5 4..6 4..7 4..8
// 5..5 5..6 5..7 5..8
// 6..6 6..7 6..8
// 7..7 7..8
// 8..8
// 这么多!= 21 = (9 - 2 - 1) * (9 - 2) / 2
// 这就是任何一个数字从栈里弹出的时候,计算矩形数量的方式
public static int countFromBottom(int[] height) {
if (height == null || height.length == 0) {
return 0;

Loading…
Cancel
Save