做网站前的准备,上海app开发公司排名,导购wordpress主题,企业网站seo外包 s文章目录1. 题目2. 解题1. 题目
给定两个列表 A and B#xff0c;并且 B 是 A 的变位#xff08;即 B 是由 A 中的元素随机排列后组成的新列表#xff09;。
我们希望找出一个从 A 到 B 的索引映射 P 。 一个映射 P[i] j 指的是列表 A 中的第 i 个元素出现于列表 B 中的第…
文章目录1. 题目2. 解题1. 题目
给定两个列表 A and B并且 B 是 A 的变位即 B 是由 A 中的元素随机排列后组成的新列表。
我们希望找出一个从 A 到 B 的索引映射 P 。 一个映射 P[i] j 指的是列表 A 中的第 i 个元素出现于列表 B 中的第 j 个元素上。
列表 A 和 B 可能出现重复元素。如果有多于一种答案输出任意一种。
例如给定
A [12, 28, 46, 32, 50]
B [50, 12, 32, 46, 28]需要返回
[1, 4, 3, 2, 0]
P[0] 1 因为 A 中的第 0 个元素出现于 B[1]
而且 P[1] 4 因为 A 中第 1 个元素出现于 B[4]以此类推。注
A, B 有相同的长度范围为 [1, 100]。
A[i], B[i] 都是范围在 [0, 10^5] 的整数。来源力扣LeetCode 链接https://leetcode-cn.com/problems/find-anagram-mappings 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题
class Solution {
public:vectorint anagramMappings(vectorint A, vectorint B) {unordered_mapint,unordered_setint m;for(int i 0; i B.size(); i)m[B[i]].insert(i);vectorint ans(A.size());for(int i 0; i A.size(); i){ans[i] *(m[A[i]].begin());m[A[i]].erase(m[A[i]].begin());}return ans;}
};4 ms 9.1 MB 长按或扫码关注我的公众号一起加油、一起学习进步