- 博客(4)
- 收藏
- 关注
转载 C++中的虚拟继承
1.为什么要引入虚拟继承虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如:类D继承自类B1、B2,而类B1、B2都继承自类A,因此在类D中两次出现类A中的变量和函数。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚拟基类。实现的代码如下:class Aclass B1:public virtual A;class B2:p
2015-04-10 20:32:05 408
转载 首先如何判断一个链表是否有环,并找出环的入口
http://blog.csdn.net/gukesdo/article/details/7516021首先如何判断一个链表是否有环:设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。(当然,fast先行头到尾部为NULL,则为无环链表)程序如下:
2015-04-08 15:49:54 7599 2
原创 STL容器 相关知识积累
STL的容器可以分为以下几个大类: 一:序列容器, 有vector, list, deque, string.二 : 关联容器, 有set, multiset, map, mulmap, hash_set, hash_map, hash_multiset, hash_multimap三: 其他的杂项, stack, queue, valarray, bitset
2015-04-08 12:38:04 472
原创 找出数组中2个只出现1次的数,其他数都出现2次
问题表述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。按位异或相关知识:按位异或性质:将数转化成2进制,2个数相同异或为0,2数不同异或为1: 0^0=0,1^1=0;0^1=1。(与1异或,得该位元素的反,与0异或,得该位元素)满足结合律和交换律。按位异或典型用途:1、
2015-04-08 09:41:49 4009 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人