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

posted @ 2014-03-16 12:46  yexuannan  阅读(263)  评论(0编辑  收藏  举报