Vim--编程珠玑向量翻转
2014-12-08 22:57
190 查看
#include<iostream> #include<vector> using namespace std; void FindNumberOfMoreTwoTimesAppear(int pInt[], int length) { // pInt 所指数组为有序数组, // length 数组长度 if(pInt == NULL || length <= 0) return; for(int i = 0; i < length; i++) { if((pInt[i] == pInt[i+1]) && (i < length -1)) { std::cout << "i = " << i << ", " << pInt[i] << std::endl; } } } void RotateVectorValue(vector<char>& Src) { if(Src.size() <= 1) return ; vector<char>::iterator pBegin = Src.begin(); vector<char>::iterator pEnd = Src.end() - 1; int len = Src.size(); if(len & 0x01) { while(pBegin != pEnd) { swap(*pBegin++, *pEnd--); } } else { while(pEnd > pBegin) { swap(*pBegin++, *pEnd--); } } } void PrintVector(vector<char>& Input) { if(!Input.size()) { return; } vector<char>::iterator Begin = Input.begin(); vector<char>::iterator End = Input.end(); vector<char>::iterator it = Begin; for(it = Begin; it != End; it++) { std::cout << *it << '\t'; } std::cout << std::endl; } int main() { std::cout << "sizeof(int) = " << sizeof(int) << std::endl; std::cout << "sizeof(char) = " << sizeof(char) << std::endl; std::cout << "sizeof(double) = " << sizeof(double) << std::endl; int a[10] = {1,2,3,3,4,5,6,6,8,9}; FindNumberOfMoreTwoTimesAppear(a, 10); vector<char> Src1, Src2; Src1.push_back('a'); Src1.push_back('b'); Src1.push_back('c'); std::cout << "Raw data of Src1: " << '\n'; PrintVector(Src1); RotateVectorValue(Src1); std::cout << "After rotate of Src1: " << '\n'; PrintVector(Src1); std::cout << std::endl; Src2 = Src1; Src2.push_back('d'); std::cout << "Raw data of Src2: " << '\n'; PrintVector(Src2); RotateVectorValue(Src2); std::cout << "After rotate of Src2: " << '\n'; PrintVector(Src2); return 0; }
相关文章推荐
- [编程珠玑]-第八章:连续子向量的最大和
- 编程珠玑---第二章---n元一维向量向左旋转
- 一维向量旋转算法 编程珠玑 第二章
- 编程珠玑之第二章questionB: n元一维向量旋转问题
- 编程珠玑第8章:具有n个浮点数字的向量x,在任何相邻子向量中找出最大和。
- 编程珠玑-向量旋转
- 模式识别-查找向量中元素之和最大的连续子向量---编程珠玑
- 编程珠玑 Chapter2 字符串翻转算法
- 【编程珠玑】将一个n元向量左旋转i个位置
- n元一维向量旋转问题(编程珠玑--第2章--问题B )
- 编程珠玑 8.3分治法的错误 连续子向量的最大和
- 【资源】编程珠玑I 源码
- 手把手教你把Vim改装成一个IDE编程环境(图文)
- 编程珠玑--啊哈!算法
- 手把手教你把Vim改装成一个IDE编程环境(图文)
- 手把手教你把Vim改装成一个IDE编程环境(图文)
- 手把手教你把Vim改装成一个IDE编程环境(图文)
- 手把手教你把Vim改装成一个IDE编程环境(图文)
- 实现编程时Vim自动导入相应模板
- 编程珠玑之第一章习题6给每个整数不超过10次的100w数据排序的测试用例