LeetCode简单题之将每个元素替换为右侧最大元素
题目
给你一个数组 arr ,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用 -1 替换。
完成所有替换操作后,请你返回这个数组。
示例 1:
输入:arr = [17,18,5,4,6,1]
输出:[18,6,6,6,1,-1]
解释:
- 下标 0 的元素 --> 右侧最大元素是下标 1 的元素 (18)
- 下标 1 的元素 --> 右侧最大元素是下标 4 的元素 (6)
- 下标 2 的元素 --> 右侧最大元素是下标 4 的元素 (6)
- 下标 3 的元素 --> 右侧最大元素是下标 4 的元素 (6)
- 下标 4 的元素 --> 右侧最大元素是下标 5 的元素 (1)
- 下标 5 的元素 --> 右侧没有其他元素,替换为 -1
示例 2:
输入:arr = [400]
输出:[-1]
解释:下标 0 的元素右侧没有其他元素。
提示:
1 <= arr.length <= 10^4
1 <= arr[i] <= 10^5
来源:力扣(LeetCode)
解题思路
这道题只需要维护一个最大值,并且从尾巴向头部遍历即可。
class Solution:def replaceElements(self, arr: List[int]) -> List[int]:temp=[-1]MAX=arr[-1]for i in range(len(arr)-2,-1,-1):if arr[i+1]>MAX:MAX=arr[i+1]temp.append(MAX)return temp[::-1]
LeetCode简单题之将每个元素替换为右侧最大元素相关推荐
- 1299. 将每个元素替换为右侧最大元素
2020-04-21 1.题目描述 将每个元素替换为右侧最大元素 2.题解 从后往前进行遍历,求出最大值即可. 3.题解 class Solution { public:vector<int&g ...
- leetcode1299. 将每个元素替换为右侧最大元素
给你一个数组 arr ,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用 -1 替换. 完成所有替换操作后,请你返回这个数组. 示例: 输入:arr = [17,18,5,4,6,1] 输 ...
- LeetCode简单题之到目标元素的最小距离
题目 给你一个整数数组 nums (下标 从 0 开始 计数)以及两个整数 target 和 start ,请你找出一个下标 i ,满足 nums[i] == target 且 abs(i - sta ...
- LeetCode简单题之删除排序链表中的重复元素
题目 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 .返回 已排序的链表 . 示例 1: 输入:head = [1,1,2] 输出:[1,2] 示例 2: 输入:h ...
- LeetCode简单题之数组序号转换
题目 给你一个整数数组 arr ,请你将数组中的每个元素替换为它们排序后的序号. 序号代表了一个元素有多大.序号编号的规则如下: 序号从 1 开始编号. 一个元素越大,那么序号越大.如果两个元素相等, ...
- LeetCode简单题之按奇偶排序数组
题目 给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素. 你可以返回满足此条件的任何数组作为答案. 示例: 输入:[3,1,2,4] 输出:[2,4,3,1 ...
- LeetCode简单题之找到所有数组中消失的数字
题目 给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内.请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果. 示例 1 ...
- LeetCode简单题之寻找数组的中心下标
题目 给你一个整数数组 nums ,请计算数组的 中心下标 . 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和. 如果中心下标位于数组最左端,那么左侧数之和视为 0 ...
- LeetCode算法题1:判断整数数组是否存在重复元素
文章目录 前言 一.题目描述 二.思路 1.暴力破解 2.空间换时间(有点像桶排序思想) 3,排序 总结 前言 本系列文章为leetCode刷题笔记,仅供参考. 一.题目描述 给定一个整数数组,判断是 ...
最新文章
- Vue报错:Uncaught RangeError: Maximum call stack size exceeded
- 整理下java六种单例模式
- json.dumps和loads方法
- 计算机操作系统思维导图_我在b站学计算机
- linux硬盘转windows7,记——第一次上手UEFI电脑,将mbr硬盘的Windows7和Linux转为gpt+uefi启动...
- 数据结构杂谈(六)——队列
- python解释器环境中用于表示上一次运算结果的特殊变量_判断正误 PUSH CL_学小易找答案...
- WINDOWS操作系统中可以允许最大的线程数
- TwentyTwelve透明主题二次美化版
- ASP.NET常用代码汇总
- 怎样将树的中序遍历的数输入到一个数组中_数据结构与算法-二叉查找树平衡(DSW)...
- linux系统安装redis,外部无法访问
- Navicat12及以上才能显示json数据
- python求解三角形第三边长
- html静态页面实现微信分享思路
- 陕西神木市一煤矿发生冒顶事故 约20人被困井下
- 怎么使用QQ音乐api搭建个人音乐站点
- .dSYM文件的生成
- 基于AD9833的三角波及正弦波发生器资料(含51程序)
- useragent android,获取android默认的useragent