STL训练清单

训练清单传送门

multimap的训练集

参考文章:multimap::equal_range
multimap::count

multimap的好题目

  • 注意:multimap其中没有_,不像unordered_map

方法1

  • map和multimap一起用

  • 『『这种累计方式的Hash我前2天也写过,还是学习自别人那里的』』』

  • 难点在于:mulimap很少用,其中的equal_range()成员函数虽然在map和multimap中

  • 都有用到,但是很少用

  • 此外,mulimap没有[]

class Solution {
public:
    bool containsNearbyDuplicate(vector<int>& nums, int k) {
        map<int,int> mp;
        multimap<int,int> HelpCount;
        int Len=nums.size();
        for(int i=0; i<Len; ++i)
        {
            int CurNum=nums[i];
            //如果前面有等于的
            if( mp.count( CurNum ) )
            {
                auto Begin2End=HelpCount.equal_range( CurNum );
                            //下面的这种写法,以前很少写!!
                            //参考自:http://www.cplusplus.com/reference/map/multimap/equal_range/
                for( auto it=Begin2End.first; it!=Begin2End.second; ++it)
                {
                    //cout<< (*it).second <<endl;
                    if( i-(*it).second <=k )
                    {
                        return true;
                    }
                }

            }
            mp[ CurNum ]++;
            //注意:multimap是没有[]的
            HelpCount.insert( make_pair( CurNum, i) );
        }

        return false;
    }
};

方法2

  • map和滑动窗口一起用
  • 就是将<=k和multimap转换为滑动窗口来写
二次训练STL 文章被收录于专栏

这是一个分类专栏,仅做快速记录

全部评论

相关推荐

不对是145个人…嗯…&nbsp;大家都没发现秋招提前批来了嘛..笑死我了
牛客39712426...:投了也是浪费时间,之前投米实习,除了浪费我时间写笔试题没有任何反馈,懒得投了
26届校招投递进展
点赞 评论 收藏
分享
来个厂收我吧:首先,市场侧求职我不是很懂。 但是,如果hr把这份简历给我,我会觉得求职人不适合做产品经理。 问题点: 1,简历的字体格式不统一,排版不尽如人意 2,重点不突出,建议参考star法则写个人经历 3,印尼官方货币名称为印度尼西亚卢比(IDR),且GMV690000印尼盾换算为305人民币,总成交额不高。 4,右上角的意向职位在发给其他公司时记得删除。 5,你所有的经历都是新媒体运营,但是你要投市场营销岗位,jd和简历不匹配,建议用AI+提示词,参照多个jd改一下经历内容。 修改建议: 1,统一字体(中文:思源黑体或微软雅黑,英文数字:time new romans),在word中通过表格进行排版(b站学) 2,校招个人经历权重:实习经历=创业经历(大创另算)>项目经历>实训经历>校园经历 3,请将项目经历时间顺序改为倒序,最新的放最上方。 4,求职方向不同,简历文字描述侧重点也需要不同。
点赞 评论 收藏
分享
07-07 12:47
门头沟学院 Java
码农索隆:竟然还真有卡体检报告的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务