zoukankan      html  css  js  c++  java
  • map函数的应用

    map函数在Python中的应用

    函数介绍:

    map() 会根据提供的函数对指定序列做映射

      map(function, iterable, ...) 第一个参数function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表(python2.x返回列表,Python 3.x 返回迭代器)。

    实例:
    1 >>> def square(x) :            # 计算平方数
    2     return x**2
    3 4 >>> map(square, [1,2,3,4,5,6])   # 计算列表各个元素的平方
    5 [1, 4, 9, 16, 25, 36]
    6 >>>map(lambda x: x ** 2, [1, 2, 3, 4, 5])  # 使用 lambda 匿名函数
    7 [1, 4, 9, 16, 25]

    补充:reduce()函数

      reduce()函数也是python内置的高阶函数,可以把所有的元素进行f运算,同时可以传入三个参数,第三个参数作为初值。

    map函数在C++中的应用

    函数介绍:

      map是c++的一个标准容器,是一类关联式容器。

      它的特点是添加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。

    自动建立Key -value的对应,key 和value可以是任意你需要的类型。

      map函数的功能:根据key值快速查找记录,查找的复杂度基本是Log(N);快速插入Key - Value 记录;快速删除记录:根据Key 修改value记录;遍历所有记录。

    实例:

      使用map得包含map类所在的头文件 #include <map>    <!--//注意,STL头文件没有扩展名.h-->

      map对象是模板类,需要关键字和存储对象两个模板参数:std:map<int, string> personnel; 这样就定义了一个用int作为索引,并拥有相关联的指向string的指针。

      map的基本操作函数:
    begin()             返回指向map头部的迭代器 
    ​
    clear()             删除所有元素 
    ​
    count()             返回指定元素出现的次数
    ​
    empty()             如果map为空则返回true 
    ​
    end()               返回指向map末尾的迭代器 
    ​
    equal_range()       返回特殊条目的迭代器对
    ​
    erase()             删除一个元素
    ​
    find()              查找一个元素
    ​
    get_allocator()     返回map的配置器
    ​
    insert()            插入元素
    ​
    key_comp()          返回比较元素
    ​
    key的函数 lower_bound()   返回键值>=给定元素的第一个位置
    ​
    max_size()          返回可以容纳的最大元素个数
    ​
    rbegin()            返回一个指向map尾部的逆向迭代器
    ​
    rend()              返回一个指向map头部的逆向迭代器
    ​
    size()              返回map中元素的个数
    ​
    swap()              交换两个map 
    ​
    upper_bound()       返回键值>给定元素的第一个位置
    ​
    value_comp()        返回比较元素value的函数
  • 相关阅读:
    Java 蓝桥杯 算法训练 貌似化学
    Java 蓝桥杯 算法训练 貌似化学
    Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
    Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
    Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
    Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
    Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
    JAVA-蓝桥杯-算法训练-字符串变换
    Ceph:一个开源的 Linux PB 级分布式文件系统
    shell 脚本监控程序是否正在执行, 如果没有执行, 则自动启动该进程
  • 原文地址:https://www.cnblogs.com/zyh19980816/p/11851514.html
Copyright © 2011-2022 走看看