网站服务器租用你的知识宝库,公司网站的建设怎么做,网站空间续费多钱一年,惠州seo外包公司【Leetcode题单】#xff08;01 数组篇#xff09;刷题关键点总结03【数组的改变、移动】#xff08;3题#xff09; 数组的改变、移动453. 最小操作次数使数组元素相等 Medium665. 非递减数列 Medium283. 移动零 Easy 大家好#xff0c;这里是新开的LeetCode刷题系列01 数组篇刷题关键点总结03【数组的改变、移动】3题 数组的改变、移动453. 最小操作次数使数组元素相等 Medium665. 非递减数列 Medium283. 移动零 Easy 大家好这里是新开的LeetCode刷题系列以后尽量一天更新一个小章节。此系列应超过400题。 数组篇03《数组的改变、移动》共3道题1简单题2中等题。 注意看重点部分总结起来是这一类题的规律。 数组的改变、移动
453. 最小操作次数使数组元素相等 Medium
453. 最小操作次数使数组元素相等 public int minMoves(int[] nums) {int min Arrays.stream(nums).min().getAsInt();int sum 0;int n nums.length;for(int i 0; i n; i){sum nums[i] - min;}return sum;}重点
问题转化n-1位加一转换成 1位-1Arrays的流操作
665. 非递减数列 Medium
665. 非递减数列 public boolean checkPossibility(int[] nums) {int n nums.length;int time 0;for(int i 1; i n; i){int x nums[i-1], y nums[i];if(x y){time;if(i 1 y nums[i - 2]){nums[i] x;}if(time 1){return false;} }}return true;}重点
简化题目用xy来指代递减的两个数改变原数组一次以观察是否符合题设分情况讨论 如果y大于x左侧则该错误略过如果y小于x左侧则此时y应修改为x判断后面序列情况
283. 移动零 Easy
283. 移动零
public void moveZeroes(int[] nums) {int n nums.length;int tail 0;for(int num : nums){if(num ! 0){nums[tail] num;}}for(int i tail; i n; i){nums[i] 0;}}重点
指针思维使用指针的思维方式用tail指向该更新的位置最后别忘记结果置0 这个系列希望能够帮助大家提高刷题效率发现系列算法题目的常规思路更快a题速通Leetcode b站【软件柠檬】以后会不定期分享计算机领域基础知识求职干货为大家助力实习和春秋招offer 公众号【软件柠檬】也会不定期更新优质内容分享优质干货资料希望能够帮助到大家~ ❤️这里是 软件柠檬 让我们一起学习进步~❤️