- 博客(688)
- 资源 (19)
- 问答 (2)
- 收藏
- 关注
原创 重拾C++经典笔试30题(1-10)
重拾C++经典笔试30题(1-10)1. /*----------------统计10进制转化为2进制1的个数-----------------int total2Cnts(int x){ int count = 0; while(x) { ++count; x =
2012-09-02 23:26:23 3626 2
转载 面试中你必须要知道的语言陷阱
面试中你必须要知道的语言陷阱 用“激将法”遮蔽的语言陷阱,这是面试官用来淘汰大部分应聘者的惯用手法。采用这种手法的面试官,往往在提问之前就会用怀疑、尖锐、咄咄逼人的眼神逼视对方,先令对方心理防线步步溃退,然后冷不防用一个明显不友好的发问激怒对方。如:“你经历太单纯,而我们需要的是社会经验丰富的人”,“你性格过于内向,这恐怕与我们的职业不合适”,“我们需要名牌院校的毕业生
2012-08-28 22:19:56 2915 3
原创 数据结构面试之九——图的常见操作3之最小生成树
数据结构面试之九——图的常见操作3之最小生成树题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。九、图的常见操作3之最小生成树最小生成树——包含带权图中的全部顶点并不能形成环,且权值之和最小的图。求解最小生成树的方法包括:Prim算法和Kruskal算法。对于Prim算法思想:1)从源结点集中选定一个源结点(初始源
2012-08-24 22:44:57 4843 1
原创 数据结构面试之八——图的常见操作2之最短路径
数据结构面试之九——图的常见操作2之最短路径题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。八、图的常见操作2之最短路径(一)最短路径核心思想步骤如下:(1)从选定的源顶点出发,先选择与该源顶点相连的权值最小且尚未标识过的顶点X,并标识X为True、记录该路径长度;(2)然后比较经过该顶点X与其余顶点相连的路径之
2012-08-24 22:38:19 4571
原创 数据结构面试之七——图的常见操作
题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。七、图的常见操作 图的基本操作,包括:1.创建一个图,2.判断图是否为空,3.图的打印,4.图的遍历…..其中对于1,创建一个图,需要考虑图的存储结构,存储结构分为:邻接矩阵存储(数组),邻接表存储(数组链表)。而对于四,也是图的核心操作,主要分为:图的深度优先
2012-08-22 22:48:52 6913 1
原创 操作系统面试之一——程序、进程、线程
操作系统面试之一——程序、进程、线程题注:《面试宝典》操作系统部分错误、漏洞较多,笔者对此参考相关书籍和自己观点进行了重写,供大家参考。一、程序、进程、线程1.程序和进程.进程由两个部分组成:1)操作系统用来管理进程的内核对象。内核对象也是系统用来存放关于进程的统计信息的地方。2)地址空间。它包含所有可执行模块或DLL模块的代码和数据。它还包含动态内存分配的空间。如线程堆栈和堆分配
2012-08-21 10:06:14 3836 1
原创 数据结构面试之六——二叉树的常见操作2(非递归遍历&二叉排序树)
数据结构面试之六——二叉树的常见操作2(非递归遍历&二叉排序树)题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。六、二叉树的基本操作(非递归遍历)&二叉排序树的操作 接上一节第五部分,主要分析二叉树的非递归遍历和二叉排序树的操作。1. 非递归中序遍历//1.依次将根节点root的左子树入栈,
2012-08-19 22:52:08 6809
原创 数据结构面试之五—二叉树的常见操作(递归实现部分)
数据结构面试之五—二叉树的常见操作(递归实现部分)题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。转载请注明:http://blog.csdn.net/wojiushiwo987/article/category/1210932五、二叉树的基本操作(递归实现) 二叉树是笔试、面试的重点,包括选择题的题型之——求
2012-08-15 23:24:55 4250 2
原创 数据结构面试之四——队列的常见操作
数据结构面试之四——队列的常见操作题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。四、队列的基本操作1.用数组构造队列队列即是满足先进先出的链表。用数组存储的话,同样需要满足队列头front出栈,队列末尾rear入栈。而对于数组来讲,rear和front可以代表数组头和尾。不能简单的固定rear和front的大小为m
2012-08-15 23:08:16 4172
原创 数据结构面试之三——栈的常见操作
数据结构面试之三——栈的常见操作题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。三、栈的基本操作3.1用数组构造栈【注意以下几点】:1.基于数组的栈的三要素:1)栈的最大容量maxSize; 2)栈的当前容量=当前栈中元素的个数=栈顶top-1;3)动态数组存储栈的元素 Type* list; 2
2012-08-15 23:03:32 4243 2
原创 数据结构面试之二——双向链表表、循环链表、有序链表的常见操作
数据结构面试之二——双向链表表、循环链表、有序链表的常见操作题注:《面试宝典》有相关习题,但思路相对不清晰,排版有错误,作者对此参考相关书籍和自己观点进行了重写,供大家参考。二、双向链表双向链表的建立是在单链表的基础上,多了一个指向前驱的指针back。其他的操作类似,注意点就是在双向链表的操作,尤其插入、删除操作中需要修改两个指针的指向,一个是back指针,一个是next指针。1.
2012-08-14 22:14:37 5760
原创 数据结构面试之一——单链表常见操作
数据结构面试之一——单链表常见操作题注:《程序员面试宝典》有相关习题,但思路相对不清晰,排版有错误,本文对此参考相关书籍和自己观点进行了重写,供大家参考。1.查找链表元素Step1:置查找标记bfound=false;判断链表是否为空,是,提示“不能查找空链表”;否,进入step2。Step2:从链表头开始查找,判断(当前点的info是否与待查找元素值相等&&指针未指向末尾),是,
2012-08-13 07:06:38 5793 2
原创 九连环的递归算法(C和C++)
九连环的递归算法(C和C++)九连环的递归算法一、九连环简介九连环游戏是中国人自己发明的,它的历史非常悠久,据说是起源于战国时期。九连环主要是由一个框架和九个圆环组成:每个圆环上连有一个直杆,而这个直杆则在后面一个圆环内穿过,九个直杆的另一端用一块木板或圆环相对固定。二、九连环的规律通过玩九连环你就会发现存在这样一个规律:(1)第 1环可以自由上下(2)而上/下第 n环
2012-08-12 20:47:13 11160 1
原创 深究递归和迭代的区别、联系、优缺点及实例对比
深究递归和迭代的区别、联系、优缺点及实例对比1.概念区分递归的基本概念:程序调用自身的编程技巧称为递归,是函数自己调用自己.一个函数在其定义中直接或间接调用自身的一种方法,它通常把一个大型的复杂的问题转化为一个与原问题相似的规模较小的问题来解决,可以极大的减少代码量.递归的能力在于用有限的语句来定义对象的无限集合.使用递归要注意的有两点:1)递归就是在过程或函数里面调用自身;
2012-08-11 22:47:26 32642 5
原创 C/C++经典面试50题(挑重点整理)2
面试题17:简述类成员函数的重写、重载和隐藏的区别(1)重写和重载主要有以下几点不同。范围的区别:被重写的和重写的函数在两个类中,而重载和被重载的函数在同一个类中。 参数的区别:被重写函数和重写函数的参数列表一定相同,而被重载函数和重载函数的参数列表一定不同。 virtual的区别:重写的基类中被重写的函数必须要有virtual修饰,而重载函数和被重载函数可以被virtual
2012-07-30 06:57:38 11823 7
原创 C/C++经典面试50题(挑重点整理)
面试题3:sizeof和strlen的区别sizeof和strlen有以下区别: sizeof是一个操作符,strlen是库函数。 sizeof的参数可以是数据的类型,也可以是变量,而strlen只能以结尾为‘\0‘的字符串作参数。 编译器在编译时就计算出了sizeof的结果。而strlen函数必须在运行时才能计算出来。并且sizeof计算的是数据类型占内存的
2012-07-27 23:31:37 10989 2
原创 爱上博客--个人随想
爱上博客--个人随想 在研究生两年的生活里,或许直到现在才越发有这种感受,是什么呢?分享的快乐。差不多半年前的样子,关注了刘未鹏老师的博客,看了林锐博士的书,才知道原来除了国外的大家,国内的哥们也能对技术有如此深邃的见解。 或多或少受他们的影响吧,加上自己平日里也不爱游戏,娱乐活动少。倒是有写日记的习惯,突发感想想建立自己的博客。当然了,前期到现在都没有过自己深入的
2012-07-26 23:37:06 2179
转载 国外程序员面试经验
国外程序员面试经验导读:面试准备的重要性不用编者多言,大家都很清楚。本文是加拿大的一位程序员所写。大家可以看看国外程序员是怎么准备面试。不管你是否认同他的说法,《诗经》中有句话非常好——“它山之石,可以攻玉”。如果你还有其他面试准备方法,不妨在评论或微博中和大家一起讨论分享。 一、开门见山一般来说,你(求职者)在面试中会花很多时间谈论以前的经历。如果你还没有想出你的最具代表性的经历
2012-07-23 23:35:29 3764
原创 new和delete必须成对出现吗?【网上集合贴+个人总结】
new和delete必须成对出现吗?【网上集合贴+个人总结】1.从内存泄露与否的角度考虑new 和 delete不一定要成对出現。理论上是這樣的。但是从习惯上來說,new delete成對出現是一個好的習慣。爲什麽說不一定要成對出現呢?这个问题在csdn上有一個牛人写过很长的文章,不知道有沒有人还能找到?我記得大概是這個意思。(1)认为一定要成对出現的,主要是因为动态分配内存之后,
2012-07-19 23:21:22 4310 2
转载 一位软件工程师的6年总结
一位软件工程师的6年总结“又是一年毕业时”,看到一批批学子离开人生的象牙塔,走上各自的工作岗位;想想自己也曾经意气风发、踌躇满志,不觉感叹万千……本文是自己工作6年的经历沉淀或者经验提炼,希望对所有的软件工程师们有所帮助,早日实现自己的人生目标。本文主要是关于软件开发人员如何提高自己的软件专业技术方面的具体建议,前面几点旨在确定大的方向,算是废话吧。1、分享第一条经验:“学历代表过去、能力
2012-07-19 21:43:33 3725
原创 VS2008多线程WinSock通信中常见问题及解决方案
VS2008多线程WinSock通信中常见问题及解决方案问题一、VS2008中,CString转化为char*时,GetBuffer(m_str.GetLength())等屡试不爽?解决方案:无奈网友这个函数还好使[大家不用再发帖问了,这是相对较好的解决方案],主要是Unicode和GB2312编码方式的不同,一般出现在winsock的send或recv函数buf处。可以使用如下函数实
2012-07-11 07:23:59 2881
转载 C语言程序书写规范
C语言程序书写规范我做C语言底层开发,积累了一些代码书写的经验供大家参考:1.C语言书写规范1.1符号命名规则1.1.1符号名包括模块名、常量名、标号名、子程序名等。这些名字应该能反映它所代表的实际东西,具有一定的意义,使其能够见名知义,有助于对程序功能的理解。命名采用匈牙利命名法。规则如下:(1)所有宏定义、枚举常数和const变量,用大写字母命名。在复合词里用下划线隔开每个
2012-07-06 07:29:19 4991 1
原创 Sleep和WaitForSingleObject区别
一、Msdn种Sleep解读This function suspends the execution of thecurrent thread for a specified interval.终止线程指定的时间间隔。void Sleep(DWORD dwMilliseconds);ParametersdwMilliseconds Specifies the tim
2012-07-06 07:24:57 10022
原创 临界区线程对象的使用
临界区线程对象的使用#include #include using namespace std;CRITICAL_SECTION g_cs;bool g_bContinue = true;int g_count1 = 0;int g_count2 = 0;DWORD WINAPI ThreadProc(LPVOID lpParameter);int main(){ H
2012-07-06 07:20:09 3665
转载 _beginThreadex创建多线程解读
_beginThreadex创建多线程解读一、需要的头文件支持 #include // for _beginthread()需要的设置:ProjectàSetting-->C/C++-->User run-time library 选择Debug Multithreaded 或者Multithreaded。即使用: MT或MTD。源码如下:#include
2012-07-06 07:17:37 58012 14
转载 消息队列
消息队列 一个任务运行时的数据和状态怎么告诉其他任务?信号量为任务间同步和互斥提供了提供了高效的方法,但它不能携带更多的任务信息。因而需要使用更高级的通讯方式,即消息队列和管道。这节主要讲消息队列。消息队列的应用场景:一对一:图一 两个任务利用消息通讯这是一种简单的应用模式。任务1 发送消息到消息队列1 中,任务2 从消息队列中1 接收消息,如果任务2 需要回应
2012-07-06 07:08:31 3782
原创 unresolved external symbol __imp__WSAStartup@8 解决方法
.error LNK2001: unresolved external [email protected]下的错误信息:error LNK2001:unresolved external symbol __imp__socket@12error LNK2001:unresolved external symbol __imp__WSAStartup@8
2012-07-06 06:58:50 8427 2
转载 创建线程后为什么关闭了线程句柄,线程还是可以运行?
主线程只要拥有线程句柄,事后就可以对线程执行某些操作,比如查询线程状态等等,靠的就是句柄,如果没有句柄,系统就无从知道要查的是那个线程的状态。但保持这个句柄不关闭,并不是线程运行的条件。 关闭线程句柄只是释放句柄资源,新开启线程后,如果不再利用其句柄,应该关闭句柄,释放系统资源。关闭线程句柄和线程的结束与否没有关系。 句柄可以认为是系统对资源(如线程)的分配的一个
2012-06-25 23:17:54 5337
原创 百度之星之J:百度的新大厦
J:百度的新大厦时间限制: 1000ms 内存限制: 65536kB 描述 继百度搜索框大厦之后,百度又于2012年初在深圳奠基了新的百度国际大厦,作为未来百度国际化的桥头堡。不同于百度在北京的搜索框大厦,新的百度国际大厦是一栋高楼,有非常多的楼层,让每个楼中的电梯都能到达所有楼层将是一个极为不明智的设计。因此,设计师给出了一个特别的设计——一共大厦有m个电梯,每个电梯只有
2012-05-31 20:21:49 4595 2
原创 百度之星之I:地图的省钱计划
I:地图的省钱计划时间限制: 1000ms 内存限制: 65536kB 描述 百度地图有自己的一套坐标系(你可以把它看作一个笛卡尔坐标系),在这套坐标系里,一个标准单位为1km。而在这坐标系上针对地理信息进行标注的数据,大多数时候是通过购买的方式完成的。为了节约数据更新的成本,数据组里的鑫哥想出了一个好主意——自己测数据。鑫哥按照他的预想开始实验;在每组试验中,鑫哥选取
2012-05-31 20:19:08 1914 1
原创 百度之星之F:百科蝌蚪团
F:百科蝌蚪团时间限制: 1000ms 内存限制: 65536kB 描述 百度百科有一支神奇的队伍,他们叫自己“百科蝌蚪团”。为了更好的让蝌蚪团的成员们安排工作,百度百科的运营团队定出了一个24小时制的时间表。例如:1. 每个蝌蚪团成员工作时长相同;2. 必须安排蝌蚪团成员在他们方便的时间段工作;3. 蝌蚪团成员安排时间最小安排时间节点(开始工
2012-05-31 20:14:10 5058
原创 百度之星之H:用户请求中的品牌
H:用户请求中的品牌时间限制: 1000ms 内存限制: 65536kB 描述 馅饼同学是一个在百度工作,做用户请求(query)分析的同学,他在用户请求中经常会遇到一些很奇葩的词汇。在比方说“johnsonjohnson”、“duckduck”,这些词汇虽然看起来是一些词汇的单纯重复,但是往往都是一些特殊品牌的词汇,不能被拆分开。为了侦测出这种词的存在,你今天需要完成我给
2012-05-31 19:57:30 1676
原创 百度之星之G:聊天就是Repeat
G:聊天就是Repeat时间限制: 1000ms 内存限制: 65536kB 描述 百度Hi作为百度旗下的即时聊天工具,在百度公司内部很是流行。要实现这样的一个聊天工具,最重要的问题就是要能保证我发出的内容能原封不动的在接收同学那里显示出来。今天,就给你一个机会,让你模拟一下百度Hi传递信息的过程,把我发给Robin的聊天内容原封不动的输出出来。输入 输入的聊天内容
2012-05-31 19:44:58 1764
原创 百度之星之E:C++ 与Java
E:C++ 与Java时间限制: 2000ms 内存限制: 65536kB 描述 在百度之星的贴吧里面,Java的爱好者和C++的爱好者总是能为这两种语言哪个更好争论上几个小时。Java的爱好者会说他们的程序更加整洁且不易出错。C++的爱好者则会嘲笑Java程序很慢而且代码很长。另一个Java和C++爱好者不能达成一致的争论点就是命名问题。在Java中一个多个单词构成的
2012-05-31 19:39:50 1813
原创 百度之星之D:共同狂欢
D:共同狂欢时间限制: 1000ms 内存限制: 131072kB 描述 百度2005年8月5日上市时,在北京和纳斯达克的同学们每一个小时整点时就会通一次电话,对一下表,确认一切相关活动都精确同步。但是要注意,在两边的同学位于不同的时区,在夏时制时,两地时差12小时,因此,每次对表都需要做一下时区转换。你来帮我们完成这个有点麻烦的工作吧。输入 输入的第一行包括一个整
2012-05-31 19:29:00 1783
原创 百度之星之C:易手机的套餐
C:易手机的套餐时间限制: 1000ms 内存限制: 10000kB 描述 装载百度易平台的易手机已经上市,为了更好的为大家提供服务。百度与合作的运营商正在讨论为易手机用户推出一款特别的套餐,帮助大家更好的利用易手机。作为这个项目负责人的晓萌调研了大量用户使用这个套餐后会出现的资费预估,让我们来看看这个特别的套餐到底会带来怎样资费情况吧。输入 输入数据包括十二行,每
2012-05-31 19:27:20 1747
原创 百度之星之B:小诺爱USB设备
B:小诺爱USB设备时间限制: 1000ms 内存限制: 65536kB 描述 在百度工作的小诺是一个USB设备迷,在他桌上有一堆的USB设备——USB鼠标、USB小音箱、USB按摩器……但是,公司配给小诺的ThinkPad X系列的电脑只有一个能用的USB接口。不过还好,小诺有一堆的USB Hub,可以把一个可用的USB接口变成多个USB接口。但是,小诺很难确定这些USB
2012-05-31 19:25:44 2087
原创 百度之星之A:百度计算器的加法
A:百度计算器的加法时间限制: 1000ms 内存限制: 10000kB 描述 百度框计算中提供了计算器这个功能,模拟计算器中的复杂功能,我们最先需要解决的就是实现加法模块。今天就给你个机会,和百度计算器一样,计算一下十以内的加法吧。输入 仅有一组数据,包含两个正整数,分别为a, b(0 <= a, b <= 10)输出 一个正整数,暨输入a, b后对应
2012-05-31 19:23:46 3170
转载 关于联合体union的详细解释
1.概述联合体union的定义方式与结构体一样,但是二者有根本区别。在结构中各成员有各自的内存空间,一个结构变量的总长度是各成员长度之和。而在“联合”中,各成员共享一段内存空间,一个联合变量的长度等于各成员中最长的长度。2.联合体长度在The C Programming Language里面讲述union内存分配的原话是1)联合体就是一个结构2)联合体的所有成员
2012-05-23 21:48:39 1999
转载 孙鑫老师谈如何学好编程
《孙鑫老师谈如何学好编程》1找一本好书适合你的水平Amazon排行Java编程思想 深入浅出MFC 并不太适合初学者看不懂会打击自信心把自己的基础告诉别人去书店实际看一些,看一下前面是否能看懂看书不要太快,需要一个细嚼慢咽的过程用心,动手看到知识点时,要进行验证2帮助文档的使用MSDN Java API验证自己觉得有问题的地方,找到程
2012-05-03 22:51:15 2709 1
Windows下libevent C++封装类实现
2016-12-11
C++内部培训讲义
2016-08-07
libcurl.lib下载(32bit和64bit)
2015-09-17
MFC动态划线实现源码
2013-03-30
(可视化文件消息一体化收发Socket实现V0.1说明文档
2013-03-17
可视化文件消息一体化收发Socket实现V0.1
2013-03-17
Windows Sockets 规范及应用
2010-12-20
路由器交换机配置命令详解.doc
2010-04-18
C++ 笔试面试宝典2009版.doc
2010-04-18
? Kerberos认证相关问题思路请教:
2013-11-03
求samba下的rpcclient工具使用方法?
2013-09-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人