随笔分类 -  1.首页原创精华区

摘要:类型定义 在多叉树中,深度遍历迭代器有只读、读写、只读反转、读写反转4种,在mtree容器中的定义如下: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ 阅读全文
posted @ 2011-10-03 17:52 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:一、default constructor 默认构造函数,亦即无参构造函数。从对象构造语义上讲,可分为以下2种:1)trivial 平凡的,可以理解为浅构造 2)notrivial 非平凡的,可以理解为深构造。当一个class没有显式地(explicitly)声明或定义任何constructor的时 阅读全文
posted @ 2011-08-31 11:40 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1/************************************************* 阅读全文
posted @ 2011-08-27 15:12 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:类型定义 在多叉树中,叶子遍历迭代器有只读、读写、只读反转、读写反转4种,在mtree容器中的定义如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- 阅读全文
posted @ 2011-08-25 10:35 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:类型定义 在多叉树中,兄弟遍历迭代器有只读、读写、只读反转、读写反转4种,在mtree容器中的定义如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- 阅读全文
posted @ 2011-08-20 21:06 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:方法1:使用find和xargs命令 find dir | xargs grep str,dir是指某个目录 find file | xargs grep str,file是指某个文件 注意:这种方法,会递归搜索子目录 方法2:直接使用grep命令 grep str dir/*,dir是指某个目录, 阅读全文
posted @ 2011-08-20 19:46 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:类型定义 在多叉树中,后序遍历迭代器有只读、读写、只读反转、读写反转4种,在mtree容器中的定义如下: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ 阅读全文
posted @ 2011-08-15 12:51 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:类型定义 在多叉树中,前序遍历迭代器有只读、读写、只读反转、读写反转4种,在mtree容器中的定义如下: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ 阅读全文
posted @ 2011-08-14 13:30 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:迭代器的分类与框架 迭代器是一种设计模式,用来访问容器对象的内容而无须暴露容器的内部实现,而多叉树是一种具有递归性质的复合对象,因此它的迭代器是一种复合迭代器,且存在多种遍历顺序和策略,如前序、后序、广度、叶子、兄弟等,为了支持实现这种复合迭代器,就需要设计不同的迭代器类,由于迭代器封装了对多叉树的 阅读全文
posted @ 2011-07-31 07:55 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:在面向对象开发时,对实际问题分析进而抽象出一种类型,往往会考虑到2个方面:1)类型的内部成员和方法的定义描述 2)类型的多实例存取操作。其中第1点是类型本身数据结构的设计,第2点是类型容器数据结构的选择设计。在stl中,容器有序列式和关联式两种,前者代表有vector,list,deque等;后者代 阅读全文
posted @ 2011-07-16 12:23 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:需求分析 在数据结构中,树有两种存储方式,一种是链式存储,另一种是顺序存储。前者就是使用指针来记录树结点间的关系,在新增结点或删除结点时,只需改变与父结点或兄弟结点的指针值即可,实现较为简单;后者就是使用数组来存储,可以用相对偏移量来记录树结点间的关系,在新增结点或删除结点时,则不仅是改变与父结点或 阅读全文
posted @ 2011-07-13 15:10 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:继承情景 我们知道一个空的类,也就是其内部没有非静态数据成员,没有虚指针(包括指向虚函数表和虚基类子对象的指针),它的大小通常为1,当然在某些对齐要求严格系统上可能是另一个数(通常是4),如果空类被继承,那么派生类的大小会怎么样呢?一个支持C++标准和EBO的编译器对此会进行空基类的优化,也就是不给 阅读全文
posted @ 2011-07-10 12:58 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:著名的千千静听音乐播放器,其界面简洁优雅、美观大方,特别是它那种几个窗口像磁石般相互吸引,当拖动主窗口时,粘在一起的其它窗口会跟随着一起移动,当拖动其它窗口时,又能脱离不粘在一起,这种窗口效果让用户操作方便,省心省力。为描述方便,本文称这种效果为多窗口的组合分离,它的主要特点是仅用鼠标任意移动窗口, 阅读全文
posted @ 2011-07-04 11:14 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:这个问题,解法比较多,假设序列X大小为N,一种普通的做法是先设定最大值和最小值都为序列中第一个元素值,在一个循环内,每次循环都和当前最大值和最小值来比较更新,这样就需要2N-2次比较了;再进一步,如果先查找最大值,则需N-1次比较,再查找最小值,则需N-2次比较,总共是2N-3次比较,比上一方法少了 阅读全文
posted @ 2011-07-03 18:05 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:原题为某著名软件公司的试题,大意如下:给定一个容器,要求删除容器中重复的元素,并保持剩余元素的顺序不变。在这里,本文为了全面通用考虑,作了扩展,删除vector中的重复元素,从容器中元素顺序上可分为2种情形:1)保持剩余元素顺序不变,特称为稳定删除,对应下面的stable_unique版本函数模板 阅读全文
posted @ 2011-06-25 14:49 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:原为某著名软件公司试题,大意如下:请实现以下两个函数:char toupper(char c); char tolower(char c); 分别用于将传入的字母转为大写和小写。两个函数传入的参数取值范围都是[a-zA-Z],并且为ASCII编码,实现时不用检查参数合法性。两个函数的实现不能使用任何 阅读全文
posted @ 2011-06-25 12:13 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:原题为某游戏公司试题,大意如下: 对于一个单向链表,试写出找到它的倒序第m个元素(m >= 1)的函数,注意变量命名、注释、时间复杂度、空间复杂度。注:要求写出可编译并可以运行通过的程序代码。 这道题的常规做法或者说首先想到直觉的方法M1是先求得链表的长度,即元素总个数n,然后问题转化为求顺序第n- 阅读全文
posted @ 2011-06-24 11:40 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:原题为某游戏公司的试题,大意如下:写一个千位分隔符算法,函数原型是 char * format_thousands_separator(unsigned long val); 要求实现效果是 1.使用者不需要释放返回的字符串指针 2.支持最多调用16次而不返回相同指针地址。可以用以下方法测试 pri 阅读全文
posted @ 2011-06-24 10:55 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:一般地,泛型容器的设计实现大多只是存储了类型的单个对象,而没有存储类型的多个对象,如果有这样特定的需求,容器内的元素要求都是某个类型的多个对象,那么这时就可以考虑用模板类的数组特化来实现了,作为例程,下面C++代码描述了主模板实现 Code highlighting produced by Acti 阅读全文
posted @ 2011-06-23 12:01 cq12yue 阅读(0) 评论(0) 推荐(0)
摘要:原为某软件公司试题,大意如下:对于给定的有符号32位整数,写一个函数,当该数为正数时返回1,为负数时返回-1,为零时返回零,要求不能使用任何的条件判断分支跳转语句。在这里,稍微扩展了一下,给出了对应无符号32位整数的情形。解决思路是符号位和值分开处理,对于有符号32位整数,符号位右移31位即得a,若 阅读全文
posted @ 2011-06-18 23:50 cq12yue 阅读(0) 评论(0) 推荐(0)