Leetcode-895 Maximum Frequency Stack(最大频率堆栈)

Posted Asurudo Jyo の 倉 庫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode-895 Maximum Frequency Stack(最大频率堆栈)相关的知识,希望对你有一定的参考价值。

 1 class FreqStack
 2 {
 3     public:
 4         unordered_map<int,int> hash;
 5         vector<int> stk;
 6         int max_times;
 7         int times_table[10001];
 8         FreqStack()
 9         {
10             memset(times_table,0,sizeof(times_table));
11             max_times = 0;
12         }
13 
14         void push(int x)
15         {
16             stk.push_back(x);
17 
18             auto ptr_to_hash = hash.find(x);
19             if(ptr_to_hash==hash.end())
20             {
21                 hash.insert(make_pair(x,1));
22                 times_table[1] ++;
23                 max_times = max(1,max_times);
24             }
25             else
26             {
27                 times_table[ptr_to_hash->second] --;
28                 ptr_to_hash->second += 1;
29                 times_table[ptr_to_hash->second] ++;
30                 max_times = max(ptr_to_hash->second,max_times);
31             //    cout << x << " " << max_times << endl;
32             }
33         }
34 
35         int pop()
36         {
37             for(int i = stk.size()-1;i >= 0;i --)
38             {
39                 auto ptr_to_hash = hash.find(stk[i]);
40                 if(ptr_to_hash->second==max_times)
41                 {
42                     int result = stk[i];
43                     stk.erase(stk.begin()+i);
44                     times_table[ptr_to_hash->second] --;
45                     ptr_to_hash->second -= 1;
46                     times_table[ptr_to_hash->second] ++;
47                     if(!times_table[max_times])
48                     {
49                         max_times --;
50                     }
51                     return result;
52                 }
53             }
54             return max_times;
55         }
56 };

 

以上是关于Leetcode-895 Maximum Frequency Stack(最大频率堆栈)的主要内容,如果未能解决你的问题,请参考以下文章

Pandas 'Freq' 标签中的有效值是啥?

重复使用 beep(freq,duration)

DataFrame.resample(freq)

R 函数 spec.pgram() 的均匀间隔 1/freq

如何删除时间戳中的 freq='W-FRI' 部分

为啥 pandas 在进行季节性分解时会要求 freq 或 x?