题目:1640. 能否连接形成数组
思路:哈希表
class Solution {
public:
bool canFormArray(vector<int>& arr, vector<vector<int>>& pieces) {
unordered_map<int,int> mp;
int pn = pieces.size();
for(int i=0;i<pn;++i){
mp[pieces[i][0]] = i;
}
int an = arr.size();
int j = 0;
while(j < an){
int index = mp[arr[j]];
int m = pieces[index].size();
for(int k=0; k< m;++k){
if(arr[j++]!=pieces[index][k]){
return false;
}
}
}
return true;
}
};