这道题稍微有点意思,知道答案发现,呀,这么简单就能做啊。我一开始想的是,相遇之后用另一个指针怎么走,然后满足什么关系之后能推出来,其实不用这么麻烦。是很简单的数学关系,我画个图说一下。
S1代表的是链表进入环之前的长度,a代表当两个指针相遇时,走一步的指针在环里走的长度,S2代表的是环的周长,那么根据条件,相遇时,走两步的指针走的距离是走一步的两倍,我们得到公式:
(S1+a)*2 =...
分类:
其他好文 时间:
2014-05-10 10:29:57
阅读次数:
364
在前篇
boost::serialization 用基类指针转存派生类(错误多多,一波三折)文中我们都是使用serialize函数来实现序列化,其代码格式如下:
private:
friend class boost::serialization::access;
template
void serialize(Archive& ar, const unsigned int ...
分类:
其他好文 时间:
2014-05-10 09:09:19
阅读次数:
520
当一个程序出现错误时,它可能的情况有3种:语法错误,运行时错误和逻辑错误。语法错误是指代码的格式错了,或者某个字母输错了;运行时错误是指在程序运行的时候出现的一些么有想到的错误,如:空指针异常,数组越界,除数为零等;逻辑错误是指运行结果与预想的结果不一样,这是一种很难调试的错误。而java中的异.....
分类:
其他好文 时间:
2014-05-07 17:52:51
阅读次数:
254
c++的两大特色是多态和模板。其中多态是通过继承和虚函数来实现的,其中虚函数是通过每个对象里面的虚表来实现的。如果这个对象的类有虚函数,那么这个类就有一张虚表,存的是每个虚函数的入口地址,而这个类的每个对象,都会有一个4字节的指针,指向这张虚表,这个就是虚指针。上面一段话很多人都知道,但是如果问普通...
分类:
编程语言 时间:
2014-05-07 10:21:02
阅读次数:
471
以数列 14,11,25,37,9,28
为例,详细描述执行一趟快速排序的算法:1,选择待排序数列的枢轴,一般以数列的首元素作为枢轴.此数列中,我们选择首元素14作为枢轴,nPivot =
14.2,设定两个指针 i 和 j ,分别指向数列的首元素和尾元素. i 指向首元素14, j 指向尾元素2....
分类:
其他好文 时间:
2014-05-07 09:56:54
阅读次数:
249
优先级操作符描述例子结合性1()[]->.::++--调节优先级的括号操作符数组下标访问操作符通过指向对象的指针访问成员的操作符通过对象本身访问成员的操作符作用域操作符后置自增操作符后置自减操作符(a
+ b) / 4;array[4] = 2;ptr->age = 34;obj.age = 34;...
分类:
编程语言 时间:
2014-05-07 09:45:56
阅读次数:
396
1. 文件类型,文件类型信息包含在 struct stat 里的 st_mode
成员(1)普通文件,unix内核并不区分文本文件和二进制文件(2)目录文件,这种文件包含了其他文件的名字以及指向这些文件有关信息的指针(3)块特殊文件(4)字符特殊文件(5)FIFO,
常用于进程间通信,也称为管道(6...
分类:
其他好文 时间:
2014-05-07 09:27:44
阅读次数:
430
这个代码其实自己花了很长的时间去理解,渐渐的有所明白了一点。#include #include
typedef enum { Link , Thread } PointTag; //Link表示指针,Thread表示线索typedef struct
treenode ...
分类:
其他好文 时间:
2014-05-07 09:07:36
阅读次数:
262
面向对象的多态是建立在继承上,可以说没有继承就没有多态;多态:父类指针指向了子类的对象;1
int main()2 {3 //假设已定义了Animal类和它的子类Dog,那么多态的代码体现就是4 Animal *a = [Dog
d];//父类指针指向了子类对象5 ...
分类:
其他好文 时间:
2014-05-07 09:05:03
阅读次数:
237
能够发现的C/C++缺陷(部分)C/C++安全性问题(部分)并发死锁错误使用的阻塞调用性能下降内存泄漏文件句柄泄漏定制的内存和网络资源泄漏数据库连接泄漏导致崩溃的缺陷空指针引用释放后引用多次释放不正确的内存分配不匹配的数组新建/删除不正确的程序行为逻辑错误导致的死代码未初始化变量负数的无效引用不正确...
分类:
其他好文 时间:
2014-05-06 11:09:21
阅读次数:
546