自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

anzhsoft的技术专栏

专注分布式资源管理和大数据处理平台: Since Dec. 2013

  • 博客(10)
  • 资源 (6)
  • 收藏
  • 关注

原创 海量数据:判断一棵树是否为另一棵树的子树

T1是一棵含有几百万个节点的树,T2含有几百个节点。判断T2是否是T1 的子树。首先考虑小数据量的情况,可以根据树的前序和中序遍历所得的字符串,来通过判断T2生成的字符串是否是T1字符串的子串,来判断T2是否是T1的子树。假设T1的节点数为N,T2的节点数为M。遍历两棵树算法时间复杂性是O(N + M), 判断字符串是否为另一个字符串的子串的复杂性也是O( N + M)(比如使用KMP算法)。

2013-12-28 19:35:11 16998 2

原创 检查一个二叉树是否平衡的算法分析与C++实现

今天面试一个实习生,就想既然是未出校园,那就出一个比较基础的题吧,没想到答的并不如人意,对于树的操作完全不熟悉,因此此题算是未作答。原来我想看一下他分析问题的思路,优化代码的能力。接下来会把最近半年我出的面试题整理出来,以来share给其它同事,而来算是自己校园记忆的一个总结,毕竟自己在项目中已经很久未用到这些知识。其实很多题目都是来源于CareerCup.com。这上面汇集了许多IT名企的面试笔

2013-12-28 14:50:11 13168 2

原创 Cracking the Coding Interview:: 寻找有环链表的环路起始节点

给定一个有环链表,实现一个算法返回环路的开头节点。 这个问题是由经典面试题-检测链表是否存在环路演变而来。

2013-12-25 13:07:15 13484 3

原创 C++11:使用 auto/decltype/result_of使代码可读易维护

C++11 终于加入了自动类型推导。以前,我们不得不使用Boost的相关组件来实现,现在,我们可以使用“原生态”的自动类型推导了!C++引入自动的类型推导,并不是在向动态语言(强类型语言又称静态类型语言,是指需要进行变量/对象类型声明的语言,一般情况下需要编译执行。例如C/C++/Java;弱类型语言又称动态类型语言,是指不需要进行变量/对象类型声明的语言,一般情况下不需要编译(但也有编译

2013-12-23 18:04:35 18299 1

原创 C++ 仿函数/函数指针/闭包lambda

在上一篇文章中介绍了C++11新引入的lambda表达式(C++支持闭包的实现),现在我们看一下lambda的出现对于我们变成习惯的影响,毕竟,C++11历经10年磨砺,出140新feature,对于我们的programming idiom有深远影响。1) 仿函数wikipedia 的定义:A function object, also called a funct

2013-12-21 17:59:17 16849 2

原创 C++闭包: Lambda Functions in C++11

表达式无疑是C++11最激动人心的特性之一!它会使你编写的代码变得更优雅、更快速! 它实现了C++11对于支持闭包的支持。首先我们先看一下什么叫做闭包维基百科上,对于闭包的解释是:In programming languages, a closure (also lexical closure orfunction closure) is a functio

2013-12-20 17:29:06 24197 6

原创 C++对象模型(四):class成员初始化列表(Member Initialization List)

本文是Inside C++ Object Model Chapter 2 部分的读书笔记。编译器如何处理初始化成员列表的。下列情况中,必须要使用member initialization list进行data member 的初始化:1) 当初始化一个reference member。2) 当初始化一个const member。3) 当调用一个base class 的con

2013-12-09 20:10:17 10698 2

原创 C++对象模型(三):Program Transformation Semantics (程序转换语义学)

本文是Inside The C++ Object Model Chapter 2 部分的读书笔记。是讨论编译器调用拷贝构造函数时的策略(如何优化以提高效率),侯捷称之为"程序转化的语义学"或者说是是关于编译器对于程序是如何进行有效转化或者说翻译,以实现C++的语法机制。主要来说有以下几种Semantics:1) 明确的初始化操作(Explicit Initialization)比如定义

2013-12-09 19:15:55 12943 2

原创 C++对象模型(二):The Semantics of Copy Constructors(拷贝构造函数之编译背后的行为)

本文是 Inside The C++ Object Model's Chapter 2  的部分读书笔记。有三种情况,需要拷贝构造函数:1)object直接为另外一个object的初始值2)object作为函数以值传递的参数3) object以函数返回值形式返回如果class没有提供一个explicit copy constructor时,编译器会以default me

2013-12-08 21:50:07 13071 2

原创 C++对象模型(一):The Semantics of Constructors The Default Constructor (默认构造函数什么时候会被创建出来)

本文是 Inside The C++ Object Model, Chapter 2的部分读书笔记。C++ Annotated Reference Manual中明确告诉我们: default constructor会在需要的时候被编译器产生出来。注意,这里是编译器需要,而不是程序需要。后来的C++ Standard 95修改了这种说法,但是实质上仍是相同的: For class X, if

2013-12-08 10:24:30 13392 6

Linux Debugging: coredump 分析的材料

本文是http://blog.csdn.net/anzhsoft/article/details/18762915用到的例子。下载后先unzip,在tar xf

2014-01-27

Linux Debugging: coredump 分析入门的材料

本文是http://blog.csdn.net/anzhsoft/article/details/18762915用到的例子。

2014-01-27

局域网活动主机的C++实现

局域网活动主机的C++实现;及其开发的说明文档,在VC6.0上可以正常编译通过!!!!!!!!这是研究生计算机网络的一个得分90的程序。源码+可执行程序+说明文档

2009-03-08

常见的端口扫描的C++实现

常见的端口扫描的C++实现;及其开发的说明文档,在VC6.0上可以正常编译通过!!!!!!!!这是研究生计算机网络的一个得分90的程序。源码+可执行程序+说明文档

2009-03-08

基于SNMP的网络拓扑发现程序

基于SNMP的网络拓扑发现程序 使用vc.net编写

2008-11-25

计算机网络的帧的封装与解析

计算机网络的帧的封装与解析 可以放送和解析以太网的帧。

2008-10-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除