20140315 模板类pair的用法 2、visual 2010调整代码格式是ctrl+k+
1、模板类pair的用法
包含头文件#include<utility> http://blog.csdn.net/laixingjun/article/details/9005200
对模板类实例化。如 #define Pair pair<int,int> 或者typedef pair<int,int>Pair
用在函数返回值。 Pair findSum(int *s,int n,int x); pair<int,int> findSum(int *s,int n,int x);
声明一个对象。pair<int,int> p; p=findSum(int *s,int n, int x)
#include<stdio.h> #include<iostream> #include <utility> using namespace std; //typedef pair<int,int> Pair; #define Pair pair<int,int> Pair findSum(int *s,int n,int x) { //sort(s,s+n); 如果数组非有序的,那就事先排好序 O(N*logN) int *begin=s; int *end=s+n-1; while(begin<end) //俩头夹逼,或称两个指针两端扫描法,很经典的方法,O(N) { if(*begin+*end>x) { --end; } else if(*begin+*end<x) { ++begin; } else { return Pair(*begin,*end); } } return Pair(-1,-1); } void main() { int a[]={1,2,4,7,11,15}; int sum=15; Pair p; p=findSum(a,6,sum); printf("%d,%d",p.first,p.second); }
2、windows live write 插件
3、visual 2010调整代码格式是ctrl+k+F