03 2021 档案

摘要:解题思路 如果数组中全是正数或者全是负数,最大乘积就是最大的三个数的乘积。如果数组中既有正数又有负数,最大乘积可能是三个最大正数乘积,也可能是两个最小负数和最大正数的乘积。遍历数组找到最大的三个数和最小的两个数即可。 代码 class Solution { public int maximumPro 阅读全文
posted @ 2021-03-17 17:46 MacZhen 阅读(123) 评论(0) 推荐(0)
摘要:木桶效应 一只木桶能盛多少水,并不取决于最长的那块木板,而是取决于最短的那块木板。 解题思路 初始化left指针为左边界,right指针为右边界。首先获取短板的高度,即两个指针对应高度的较小值minHeight,由此计算容纳的水量为minHeight * (right - left),然后更新最大值 阅读全文
posted @ 2021-03-09 17:33 MacZhen 阅读(145) 评论(0) 推荐(0)
摘要:解题思路 使用哈希表存储字符以及对应的索引,窗口右边界right不断右移将新元素加入窗口,如果遇到重复的元素,就将窗口左边界left更新为 max(left, 重复元素的下一个位置),取两者之中的最大值是防止左边界left向左移动。 错误的思想: 遇到重复的元素,将窗口左边界left更新为 重复元素 阅读全文
posted @ 2021-03-01 14:20 MacZhen 阅读(61) 评论(0) 推荐(0)