zoukankan      html  css  js  c++  java
  • stl集合算法

    accumulate()  累加
    	accumulate:  对指定范围内的元素求和,然后结果再加上一个由val指定的初始值。
    	#include<numeric>
    		vector<int> vecIntA;
    		vecIntA.push_back(1);
    		vecIntA.push_back(3);
    		vecIntA.push_back(5);
    		vecIntA.push_back(7);
    		vecIntA.push_back(9);
    		int iSum = accumulate(vecIntA.begin(), vecIntA.end(), 100);		//iSum==125
    fill() 
    	fill:   将输入值赋给标志范围内的所有元素。
    		vector<int> vecIntA;
    		vecIntA.push_back(1);
    		vecIntA.push_back(3);
    		vecIntA.push_back(5);
    		vecIntA.push_back(7);
    		vecIntA.push_back(9);
    		fill(vecIntA.begin(), vecIntA.end(), 8);		//8, 8, 8, 8, 8
    10.3.8常用的集合算法
    set_union(),set_intersection(),set_difference()
    	set_union:  构造一个有序序列,包含两个有序序列的并集。
    	set_intersection:  构造一个有序序列,包含两个有序序列的交集。
    	set_difference:  构造一个有序序列,该序列保留第一个有序序列中存在而第二个有序序列中不存在的元素。
    vector<int> vecIntA;
    		vecIntA.push_back(1);
    		vecIntA.push_back(3);
    		vecIntA.push_back(5);
    		vecIntA.push_back(7);
    		vecIntA.push_back(9);
    
    		vector<int> vecIntB;
    		vecIntB.push_back(1);
    		vecIntB.push_back(3);
    		vecIntB.push_back(5);
    		vecIntB.push_back(6);
    		vecIntB.push_back(8);
    
    		vector<int> vecIntC;
    		vecIntC.resize(10);
    
    		//并集
    		set_union(vecIntA.begin(), vecIntA.end(), vecIntB.begin(), vecIntB.end(), vecIntC.begin());		//vecIntC : {1,3,5,6,7,8,9,0,0,0}
    
    		//交集
    		fill(vecIntC.begin(),vecIntC.end(),0);
    		set_intersection(vecIntA.begin(), vecIntA.end(), vecIntB.begin(), vecIntB.end(), vecIntC.begin());		//vecIntC: {1,3,5,0,0,0,0,0,0,0}
    
    		//差集
    		fill(vecIntC.begin(),vecIntC.end(),0);
    		set_difference(vecIntA.begin(), vecIntA.end(), vecIntB.begin(), vecIntB.end(), vecIntC.begin());			//vecIntC: {7,9,0,0,0,0,0,0,0,0}
    

      

  • 相关阅读:
    HTTP之multipart/formdata格式
    PHP之什么是CGI
    ObjectiveC之多语言的预编译头
    JS之addEventListener
    JS之要点Review
    iOS之JSON框架的选择
    iOS之Block笔记
    iOS之HTTP框架的选择
    PHP之自动加载对象
    HTTP之LastModified和ETag
  • 原文地址:https://www.cnblogs.com/xiaochige/p/6965018.html
Copyright © 2011-2022 走看看