该文被密码保护。 阅读全文
posted @ 2015-12-01 21:57 小白干 阅读(2) 评论(0) 推荐(0) 编辑
摘要: erase的函数原型有两种形式:iteratorerase(iteratorposition);iteratorerase(iteratorfirst,iteratorlast);例如有一个类A,classA{public:intid;A(void);~A(void);};定义vector vecf... 阅读全文
posted @ 2015-04-29 21:38 小白干 阅读(7650) 评论(0) 推荐(0) 编辑
摘要: Q:一个一维向量:arr[n] = {i1,i2,i3,......,in} ,计算其连续子向量中最大和。(即截取连续的一段使得段中各元素和最大,元素有负值;子向量可以为空,即和最小为0)A:最初的想法是穷举,双层循环将所有连续的元素和算出来for [i,n){ for[j,n){ ... 阅读全文
posted @ 2015-04-27 01:49 小白干 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 问题是这样:假设集合A中有 n 个整数,这些整数不重复,现给定一个数 i ,判断是否在A中。 最容易想到的是将n个整数存入文件或内存中,然后顺序读取与 i 比较,但是如果n很大,那么这个过程就会花费很长的时间(和空间),因此需要一种更简洁有效的手段。 再来看看信息:整数、不重复,也就是说每个整数的... 阅读全文
posted @ 2015-04-16 14:51 小白干 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 一些小问题,避免出现低级错误。1、strcmp(s1,s2): 字符串指针不见'\0'不回头,这个常在与单个字符作比较时写着写着就忘了.char* p_ch1="this is an example!";char* p_ch2="h";printf("%d ",strcmp(p_ch1+1,p_ch... 阅读全文
posted @ 2015-04-09 21:15 小白干 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 一个简单的四则运算的中缀转后缀,以及后缀的求值。已测试中缀转后缀:#include#include#include#include#include#include#includestatic stack ss_out; //后缀求值时用来存放后缀表达式的元素static stack ss_opt... 阅读全文
posted @ 2015-04-06 02:24 小白干 阅读(197) 评论(0) 推荐(0) 编辑
摘要: C++ 拷贝构造函数 赋值构造函数=================================一句话,赋值函数的前提是对象已定义;而拷贝构造是执行时才会创建一个对象。拷贝构造需要的是深拷贝。赋值函数一般模式:type& operator =(const type& par) { // (... 阅读全文
posted @ 2015-04-01 01:20 小白干 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 二叉查找树是 左子节点 data = data; node->left = NULL; node->right = NULL; return node;}//定义一个函数用来删除某个节点void destroy(BST_Node* node){ free(node);}然后... 阅读全文
posted @ 2015-04-01 01:00 小白干 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 引用是别名,其本质就是指针,引用的实现可以简单看作是一个指向特定对象的常指针。引用传参时直接操作该对象,减少了值传参时的拷贝开销。因此拷贝构造函数参数类型为(const 类型& ... ),顺便一提拷贝构造是为了按自定义方式复制对象,避免编译器的浅拷贝行为。那么指针与引用有何异同:1、引用必须初始化... 阅读全文
posted @ 2015-04-01 01:00 小白干 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 通过栈对象来管理堆空间。如果我在堆内存中申请了资源,由于系统不会主动清理堆空间,因此可能存在忘了写释放语句从而内存泄露的问题。使用自动指针可以一定程度上避免该问题。自动指针是转移拷贝语义,即对象间赋值之后源对象不存在了...所以为避免编译器的浅拷贝行为,需要重载赋值运算符。下面是自动指针的简单实现:... 阅读全文
posted @ 2015-03-31 22:15 小白干 阅读(157) 评论(0) 推荐(0) 编辑