mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
44 lines
2.7 KiB
HTML
44 lines
2.7 KiB
HTML
<p>给你一个下标从 <strong>0</strong> 开始的字符串数组 <code>words</code> ,其中 <code>words[i]</code> 要么是一个字符串形式的正整数,要么是字符串 <code>"prev"</code> 。</p>
|
||
|
||
<p>我们从数组的开头开始遍历,对于 <code>words</code> 中的每个 <code>"prev"</code> 字符串,找到 <code>words</code> 中的 <strong>上一个遍历的整数</strong> ,定义如下:</p>
|
||
|
||
<ul>
|
||
<li><code>k</code> 表示到当前位置为止的连续 <code>"prev"</code> 字符串数目(包含当前字符串),令下标从 <strong>0</strong> 开始的 <strong>整数</strong> 数组 <code>nums</code> 表示目前为止遍历过的所有整数,同时用 <code>nums_reverse</code> 表示 <code>nums</code> 反转得到的数组,那么当前 <code>"prev"</code> 对应的 <strong>上一个遍历的整数</strong> 是 <code>nums_reverse</code> 数组中下标为 <code>(k - 1)</code> 的整数。</li>
|
||
<li>如果 <code>k</code> 比目前为止遍历过的整数数目 <strong>更多</strong> ,那么上一个遍历的整数为 <code>-1</code> 。</li>
|
||
</ul>
|
||
|
||
<p>请你返回一个整数数组,包含所有上一个遍历的整数。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong class="example">示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b><code>words</code> = ["1","2","prev","prev","prev"]
|
||
<b>输出:</b>[2,1,-1]
|
||
<b>解释:</b>
|
||
对于下标为 2 处的 "prev" ,上一个遍历的整数是 2 ,因为连续 "prev" 数目为 1 ,同时在数组 reverse_nums 中,第一个元素是 2 。
|
||
对于下标为 3 处的 "prev" ,上一个遍历的整数是 1 ,因为连续 "prev" 数目为 2 ,同时在数组 reverse_nums 中,第二个元素是 1 。
|
||
对于下标为 4 处的 "prev" ,上一个遍历的整数是 -1 ,因为连续 "prev" 数目为 3 ,但总共只遍历过 2 个整数。
|
||
</pre>
|
||
|
||
<p><strong class="example">示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b><code>words</code> = ["1","prev","2","prev","prev"]
|
||
<b>输出:</b>[1,2,1]
|
||
<strong>解释:</strong>
|
||
对于下标为 1 处的 "prev" ,上一个遍历的整数是 1 。
|
||
对于下标为 3 处的 "prev" ,上一个遍历的整数是 2 。
|
||
对于下标为 4 处的 "prev" ,上一个遍历的整数是 1 ,因为连续 "prev"<strong> </strong>数目为 2 ,同时在数组 reverse_nums 中,第二个元素是 1 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= words.length <= 100</code></li>
|
||
<li><code>words[i] == "prev"</code> 或 <code>1 <= int(words[i]) <= 100</code></li>
|
||
</ul>
|