zoukankan      html  css  js  c++  java
  • 第三天。。。

    今天学习了STL中的一些函数

    stack~~~~~栈,FILO,push进,pop出最后一个push的元素

    queue~~~~~队列,FIFO,push进,pop出第一个push的元素

    deque~~~~~双向队列,可push_front, push_back, pop_front, pop_back,来在队列前面,后面输入,从队列前面后面弹出元素

    set~~~~~,set中的元素不能重复。insert(),向set中插入元素。erase(???),擦除set中的某元素。count(???),在set中查找是否有某元素,是则返回1,否则返回0。

    algorithem~~~~~sort,将元素从小到大排序,sort(begin(),end()),若要降序排列可写成sort(begin(),end(),greater<>()),注意左闭右开  [   )。

    string~~~~~与字符串相关的函数,string可直接定义字符串,size()或lenth()某字符串的长度。string 中字符串的+将两个字符串连接起来。

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    二分法查找(复杂度低):

    首先将数列排序,a[r-l],一般升序,查找  x,数列左右两端分为 a[ l],a[ r]。

    while(l<=r)

    {

      mid= l + ( r - l )/2;

      if(a[mid]==x) return 1;

      else if (  a[mid] < x )     l = mid +1 ;  

      else if (  a[mid] > x )     r = mid -1 ;     

    }

    return -1;

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    并查集:

    ”并“:两个数    a  ,  b;合并,可视为  a  是  b  的  “爹”,再有    b  ,  c 合并,则  b 是  c 的爹,又因a是b的爹,  所以a也是c的爹。  a<------b<------c        

    fa[k]=k; 一开始,各自是各自字的爹;

    fa[b] = a ;

    fa[c] = b ;

     fa[ find(b) ]=find( a ) ;

     ”查“~~~~~找爹函数。。

    int fa[k]=k;

    int find(   int  x  )

    {

      if ( fa[x]==x;) return k;

      else return   fa[x]  =   find (  fa[x]  );

    }

  • 相关阅读:
    CSS资料:IE8 CSS hack
    作为前端制作师你必须知道的事情!
    TABLE的1PT边框
    IE6 png图片的支持
    开源公司IronTec将推动PHP进驻Android平台
    终于解决了FLASH 播放器的问题了
    Windows7 添加快速启动栏
    不能调试存储过程的解决方法
    给Asp.Net Forums的后台管理菜单做一个树形外衣
    Asp.net Forums与Cnforums研究文章集合
  • 原文地址:https://www.cnblogs.com/poo7/p/11621052.html
Copyright © 2011-2022 走看看