两个数组中对应的下标的值合成一个新的数组_用栈查找数组中较大数值

d8765f2bb60e76ce5c3aa8162f544716.png

题目:给出一个数组,遍历数组。每遍历到一个下标的数据,判断后面是否有比此数据大的元素,有就把对应放到对应下标, 没有就输出0

例如:
输入:[23,11,34,12,43,65,23]
输出:[34,34,43,43,65,0,0]

思路:通过一个栈,栈中存放的是数组下标。在遍历数组时,会把当前下标的值与栈顶下标对应数组的值做比较:

1. 如果当前下标对应值大于栈顶下标对应数值,则弹出栈顶下标,并把当前下标对应的数值赋值给弹出的栈顶下标对应的数组上。继续比较。

任何情况下,都是要把当前下标入栈的。

对应代码如下:

/**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值