obsidian/笔记文件/2.笔记/用栈操作构建数组.md
2025-03-26 00:02:56 +08:00

736 B

!Pasted image 20220414231231.png

!Pasted image 20220414231237.png

!Pasted image 20220414231242.png

!Pasted image 20220414231248.png

!Pasted image 20220414231252.png


class Solution {

public:

	vector<string> buildArray(vector<int>& target, int n) {
	
		unordered_map<int, int> m;
		
		vector<string> ans;
		
		int len = target.size(), 
		max = target[len-1];
		
		for(int i = 0;i < len;++i)
		{
			m[target[i]] = 1;
		} //存入每个数字的键值
		
		for(int i = 1;i <= max;++i)
		
		{
		
			if(m[i])
			{
				ans.push_back("Push");
			} //如果这个数出现过
			
			else
			{
				ans.push_back("Push");
				ans.push_back("Pop");
			} //若这个数没出现过
	
		}

	return ans;

		}

};