题解 | #寻找最合适的生育区域#
寻找最合适的生育区域
https://www.nowcoder.com/practice/c183c254a5c94b9da341fb27fb3caf99?tpId=354&tqId=10588482&ru=/exam/oj/ta&qru=/ta/interview-202-top/question-ranking&sourceUrl=%2Fexam%2Foj%2Fta%3FtpId%3D354
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 相邻元素相差不超过指定值的最长字数组的长度 * 贪心法 * @param heights int整型一维数组 * @param k int整型 * @return int整型 */ public int findMaxRangeWithinThreshold (int[] heights, int k) { //不论高度多少,最少有一块地方可供迁徙 int res =1; //临时变量 int t=1; for(int i=0,j=1;j<heights.length;j++){ //比较高度差 if(Math.abs(heights[i]-heights[j])<k){ t++; }else{ //取最优解 res = Math.max(res,t); //重复子问题 t=1; } //更新指针 i = j; } return Math.max(res,t); } }
面试高频TOP202 文章被收录于专栏
面试高频TOP202题解