码迷,mamicode.com
首页 > 编程语言 > 详细

第三章字符串.向量和数组

时间:2014-11-09 16:32:10      阅读:351      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   ar   os   使用   sp   

练习3.24:请使用迭代器重做3.3.3节的最后一个练习(读入一组整数并把他们存入一个vector对象,先输出第一个和最后一个元素的和,接着输出第二个和倒数第二个元素的和,以此类推)

#include<iostream>
#include<vector>
 using namespace std;
 int main()
 {
     int a;
     vector<int> v;
     while(cin>>a)
         v.push_back(a);
     auto head = v.begin(), tail = v.end();
     for(;head<tail-1;++head,--tail)
     {
         cout<<*head+*(tail-1)<<endl;
     }
     return 0;
 }

这是我做的第一个版本,但是在StackOverflow上看到相同问题,发现没有检查vector是空的的情况。修改版见http://stackoverflow.com/questions/26764617/c-primer-5th-edition-exercise-3-24-iterators-in-vectors第三个答案,逆向迭代器还没开始学,先搁置。可先在auto前套一个if(!v.empty())

 

练习3.26:在100页的二分搜索程序中,为什么用的是mid=beg+(end-beg)/2,而非mid = (beg+end)/2?

http://stackoverflow.com/questions/20998982/whats-the-difference-between-mid-begend-2-and-mid-begend-beg-2-in-binary

  1. 不会产生比end大的中间数据,更安全
  2. 指针和迭代器不可相加但可相减。

第三章字符串.向量和数组

标签:style   blog   http   io   color   ar   os   使用   sp   

原文地址:http://www.cnblogs.com/m-evan/p/4085172.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!