zoukankan      html  css  js  c++  java
  • c++11的新特性

    好奇心来源于下面的一段代码, 一个是unordered_map, 这是c++11新加的container. 另外还有unordered_set, unordered_multimap, unordered_multiset. 

    另外在for循环中, 可以使用下列形式:

    1 for (auto &element : container) {
    2       std::cout << element << std::endl;
    3 }

    还有一点就是变量的初始化, 请注意: int maxlen{1}; 这也是c++11的新特性...

    使g++支持c++11可以加编译选项 -std=c++0x    这里0x就是11的draft(暂时不懂什么意思这句话2333)

     1 #include <unordered_map>
     2 #include <algorithm>
     3 class Solution {
     4 public:
     5     int longestConsecutive(vector<int> &num) {
     6         if (num.size() == 0)
     7             return 0;
     8         unordered_map<int, int> uii;
     9         int maxlen{1};
    10         for (auto &val: num) {
    11             if (uii[val] != 0) {
    12                 continue;
    13             }
    14             uii[val] = 1;
    15             int leftbound{uii[val-1]}, rightbound{uii[val+1]};
    16             uii[val-leftbound] = uii[val+rightbound] = 1+leftbound+rightbound;
    17             maxlen = max(maxlen, 1+leftbound+rightbound);
    18         }
    19         return maxlen;
    20     }
    21 };
  • 相关阅读:
    Code Review 五问五答
    JavaScript 10分钟入门
    swagger editor使用
    Tyk API网关介绍及安装说明
    Castle 多继承选择
    线程信息的获取和设置
    s3 api接口的调用
    在Hadoop集群上的HBase配置
    OpenStack 单元测试
    在Hadoop集群上的Hive配置
  • 原文地址:https://www.cnblogs.com/Stomach-ache/p/3729392.html
Copyright © 2011-2022 走看看