关于map这个东西

 

很冷门..................

 

但是,这个博客带你稍微了解一下map:

 

map用法:一般当作一个下表无穷大的数组

 

关于它的骚操作:map的鬼畜用法,可以用来字符串的处理。因为map的下标可以定义为字符串形式,这是map最好用的地方

(下面的代码中会讲)....

 

上代码!!!(代码后有它的缺点以及其复杂度分析,注意查收)

 #include<cstdio>
#include<map>//用map所引用的库
#include<string>
#include<iostream> using namespace std; map<int,int> ma;//声明map 两个int分别为数组下标类型和数组元素类型,ma为变量名 map<long long,int> gg;//数组的下标类型改为long long map<int,double> h;//数组元素类型改为double string s;//c++语言中定义字符串 map<string,int> smap;//map的鬼畜用法,可以用来字符串的处理 map<int, map<int,int> > erwei;//如果要定义一个二维的map,则需要用map中嵌套一个map,记住格式 int main()//logn
{
cin >> s; cout << s << endl;//注意定义string后进行操作,只能用cin和cout输入输出 smap["niubi"] = ;//这就是字符串的骚操作,可以用来字符串的处理
smap[s] = ;//下标字符串也可以通过输入的方式进行存储 ma[] = ;//注意下标数据不要超过int类型的边界
ma[-] = ;//即使负数也可 h[] =3.14;//注意因为它定义的元素类型为double(见12行),所以可以用浮点值进行赋值 erwei[][] = ;//定义的二维map
return ;
}

为什么map这样冷门??!!

首先,map要比数组慢很多,所以一般能用数组不用map:
对map中的元素进行访问或者修改的时间复杂度为O(logn),而对于数组,时间复杂度为O(1)

 

那在何种情况下使用map??!!

 

对于map的使用,只有两种情况可以使用
1.字符串作为数组下标
2.需要使用无穷大的数组(在数组开不了的情况下,且一般很少情况)

关于map 及 map 骚操作的更多相关文章

  1. Guava中这些Map的骚操作,让我的代码量减少了50%

    原创:微信公众号 码农参上,欢迎分享,转载请保留出处. Guava是google公司开发的一款Java类库扩展工具包,内含了丰富的API,涵盖了集合.缓存.并发.I/O等多个方面.使用这些API一方面 ...

  2. C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET

    C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET C++ STL中Map的相关排序操作:按Key排序和按Value排序 分类: C ...

  3. scala之map,List,:: , +:, :+, :::, +++操作

    scala之map,List操作 1.Map操作 2.List操作 2.1Demo1 2.2Demo2 3.:: , +:, :+, :::, +++ 1.Map操作 Map(映射)是一种可迭代的键值 ...

  4. 闪电侠 Netty 小册里的骚操作

    前言 即使这是一本小册,但基于"不提笔不读书"的理念,仍然有必要总结一下.此小册对于那些"硬杠 Netty 源码 却不曾在千万级生产环境上使用实操"的用户非常有 ...

  5. 通过HTTP的HEADER完成各种骚操作

    作为一名专业的切图工程师,我从来不care网页的header,最多关心Status Code是不是200.但是HEADER真的很重要啊,客户端从服务器端获取内容,首先就是通过HEADER进行各种沟通! ...

  6. python20个骚操作

    Python小白需要知道的 20 个骚操作! Python 是一个解释型语言,可读性与易用性让它越来越热门.正如 Python 之禅中所述: 优美胜于丑陋,明了胜于晦涩. 在你的日常编码中,以下技巧可 ...

  7. Java 12 骚操作, String居然还能这样玩!

    Java 13 都快要来了,12必须跟栈长学起! Java 13 即将发布,新特性必须抢先看! 栈长之前在Java技术栈微信公众号分享过<Java 11 已发布,String 还能这样玩!> ...

  8. Python小白需要知道的 20 个骚操作!

    Python小白需要知道的 20 个骚操作! Python 是一个解释型语言,可读性与易用性让它越来越热门.正如 Python 之禅中所述: 优美胜于丑陋,明了胜于晦涩. 在你的日常编码中,以下技巧可 ...

  9. vue开发中的"骚操作"

    前言 在与同事协作开发的过程中,见识到了不少"骚操作".因为之前都没用过,所以我愿称之为"高级技巧"! Vue.extend 在交互过程中,有个需求就是点击图标 ...

随机推荐

  1. stl_hashtable.h

    stl_hashtable.h // Filename: stl_hashtable.h // Comment By: 凝霜 // E-mail: mdl2009@vip.qq.com // Blog ...

  2. linux下导入导出oracle的dmp文件

    1.导出dmp件 命令:exp QGTG/\"QGTG@orcl\" file=/usr/fuck.dmp exp QGTG/\"QGTG@orcl\" fil ...

  3. 根据sid或sqlID查询SQL

    根据sid查询已经执行过的sql select sql_text from v$sqlarea a,v$session b where a.SQL_ID=b.PREV_SQL_ID and b.SID ...

  4. Deferred Shading延迟渲染

    Deferred Shading 传统的渲染过程通常为:1)绘制Mesh:2)指定材质:3)处理光照效果:4)输出.传统的过程Mesh越多,光照处理越费时,多光源时就更慢了. 延迟渲染的步骤:1)Pa ...

  5. 使用UIBezierPath添加投影效果

                             代码: ViewController.h #import <UIKit/UIKit.h> @interface ViewControlle ...

  6. bzoj 1927 星际竞速 —— 最小费用最大流

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1927 首先注意到这是个DAG: 考虑每个点从哪里来,可以是瞬移来的,也可以是从某个点走过来的 ...

  7. bzoj 2395 Timeismoney —— 最小乘积生成树

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2395 参考博客:https://www.cnblogs.com/autsky-jadek/p ...

  8. from selenium.webdriver.support.ui import Select

    from selenium.webdriver.support.ui import Select Select(d.find_element_by_id(u'key_开户行')).first_sele ...

  9. Wireshark抓包常见问题解析

    1.   tcp out-of-order(tcp有问题) 解答: 1).    应该有很多原因.但是多半是网络拥塞,导致顺序包抵达时间不同,延时太长,或者包丢失,需要重新组合数据单元 因为他们可能是 ...

  10. 通过能别的主机连接yum库

    本地有两台主机,分别为:192.168.2.131/24和192.168.2.132/24,本地yum源只能连接互联网: 这两台设备的虚拟机配置如下: 现有一台主机:172.16.254.88/16可 ...