zoukankan      html  css  js  c++  java
  • 【NOIp复习】STL

    String

    初始化

    声明:
    string s1;      默认构造函数,s1为空串
    string s2(s1);   将s2初始化为s1的一个副本
    string s3("valuee");   将s3初始化一个字符串面值副本
    string s4(n,'c');   将s4 初始化为字符'c'的n个副本
    读入:
    cin>>s5;  读取有效字符到**遇到空格**
    getline(cin,s6);  读取字符到**遇到换行**,空格可读入,直到‘
    ’结束('
    '不会被读入)
    getline(cin,s7,'a'); 一个直到‘a’结束,其中任何字符包括'
    '都能够读入
    

    操作

    s.empty()  判断是否为空
    s.size() 或 s.length() 返回字符的个数
    s[n]  返回位置为n的字符,**从0开始**计数
    
    string支持+连接两个string或一个string与字符串,但两个字符串是不能用+连接的。(+操作符等效于s.append())
    
    ==和!=也是可以用的
    

    函数

    s.insert(it,p);  把字符串p插入到it的位置
    s.insert(p,s2,poe2,len); 在下标p**之前**插入s2下标从poe2开始长度为len的元素
    s.insert(pos,cp,len);  下标pos**之前**插入cp数组的前len个元素
    
    s.assign(n,t);  用n个t的副本替换s
    a.assign(s1,pos2,len);从s1的下标pos2开始连续替换len个。
    s.replace (3,3,"good") ;   从第三个起连续三个替换为good
    s.substr(i,j)   截取s串中从i到j的子串
    string::npos 字符串结束的pos
    
    s.erase(3) 删除第四个元素
    s.erase (0,4) 删除第一到第五个元素
    【string的下标是从0开始的】
    
    s.find ( " cat " ) ;  超找第一个出现的字符串”cat“,返回其下标值,查不到返回string::npos,也可查找字符;
    s.append(args); 将args接到s的后面【相当于s+args】
    s.compare ( " good " ) ;  s与”good“比较相等返回0,比"good"大返回1,小则返回-1;
    reverse ( s.begin(), s.end () );  反向排序函数,即字符串反转函数
    

    map

    #include <map>
    map<string,int> dict;//声明
    dict.insert(pair(s1,n1));//插入元素
    UDT_MAP_INT_CSTRING::iterator it=dict.find(key);
    //it->first是key,it->second是value
    dict.count(key);//统计个数
    //map中元素按照key自然升序,可以用binary_search的东西
  • 相关阅读:
    Delphi 之Copyrect的使用
    Delphi GDI对象之脱屏位图(Offscreen Bitmaps),也叫内存位图
    1067. Sort with Swap(0,*) (25)【贪心】——PAT (Advanced Level) Practise
    Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds
    每一个JavaScript开发者都应该知道的10道面试题
    【HDOJ 5407】 CRB and Candies (大犇推导
    Wireshark默认不抓取本地包的解决方式
    Android LaunchMode案例篇
    使用ViewPager实现广告滑动效果
    剑指offer面试题26-复杂链表的复制
  • 原文地址:https://www.cnblogs.com/leotan0321/p/6081371.html
Copyright © 2011-2022 走看看