摘要: 源地址:http://blog.163.com/bbluesnow@126/blog/static/27784545201251051156817/链表相交问题2012-06-10 17:15:37|分类:算法|标签:微软面试题|字号订阅1、如何判断一个单链表有环2、如何判断一个环的入口点在哪里3、如何知道环的长度4、如何知道两个单链表(无环)是否相交5、如果两个单链表(无环)相交,如何知道它们相交的第一个节点是什么?6、如何知道两个单链表(有环)是否相交7、如果两个单链表(有环)相交,如何知道它们相交的第一个节点是什么?以下进行分析,并在最后附源代码及测试:1、采用快慢步长法。令两个指针p和 阅读全文
posted @ 2013-10-26 11:51 天天向上... 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://blog.csdn.net/luckyxiaoqiang/article/details/7074022版权所有,转载请注明出处,谢谢!http://blog.csdn.net/walkinginthewind/article/details/70740221. 给出两个单向链表的头指针pHead1和pHead2,判断这两个链表是否相交。假设两个链表均不带环。示意图如下:如果两个链表相交于某一节点,那么在这个相交节点之后的所有节点都是两个链表所共有的。也就是说,如果两个链表相交,那么最后一个节点肯定是共有的。先遍历第一个链表,记住最后一个节点,然后遍历第二个链表,到最后一 阅读全文
posted @ 2013-10-26 11:50 天天向上... 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://blog.csdn.net/sj13051180/article/details/67542281.判断单链表是否有环,要求空间尽量少(2011年MTK)如何找出环的连接点在哪里?如何知道环的长度?很经典的题目。1.判断是否有环。使用两个指针。一个每次前进1,另一个每次前进2,且都从链表第一个元素开始。显然,如果有环,两个指针必然会相遇。2.环的长度。记下第一次的相遇点,这个指针再次从相遇点出发,直到第二次相遇。此时,步长为1的指针所走的步数恰好就是环的长度。3.环的链接点。记下第一次的相遇点,使一个指针指向这个相遇点,另一个指针指向链表第一个元素。然后,两个指针同步前进 阅读全文
posted @ 2013-10-26 11:46 天天向上... 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://hi.baidu.com/c_c_c_c_cabc/item/3c1d1d3f50d33a34b2c0c5a2微软十五道面试题1、有一个整数数组,请求出两两之差绝对值最小的值,记住,只要得出最小值即可,不需要求出是哪两个数。2、写一个函数,检查字符是否是整数,如果是,返回其整数值。(或者:怎样只用4行代码编写出一个从字符串到长整形的函数?)3、给出一个函数来输出一个字符串的所有排列。4、请编写实现malloc()内存分配函数功能一样的代码。给出一个函数来复制两个字符串A和B。字符串A的后几个字节和字符串B的前几个字节重叠。5、怎样编写一个程序,把一个有序整数数组放到二叉树 阅读全文
posted @ 2013-10-26 10:38 天天向上... 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://blog.csdn.net/qingen1/article/details/12625063一,简答题(30分)1,当前计算机系统一般会采用层次结构存储数据,请介绍下典型计算机存储系统一般分为哪几个层次,为什么采用分层存储数据能有效提高程序的执行效率?(10分) 所谓存储系统的层次结构,就是把各种不同存储容量、存取速度和价格的存储器按层次结构组成多层存储器,并通过管理软件和辅助硬件有机组合成统一的整体,使所存放的程序和数据按层次分布在各种存储器中。目前,在计算机系统中通常采用三级层次结构来构成存储系统,主要由高速缓冲存储器Cache、主存储器和辅助存储器组成。 存储系.. 阅读全文
posted @ 2013-10-25 11:16 天天向上... 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://blog.csdn.net/doc_sgl/article/details/11695671不得不吐槽,阿里真是太混乱了,北京的笔试在考场等了两个半小时,考卷都没运到考场,@阿里巴巴集团校园招聘 回应说:“北京的同学们,简单解释下,为了试卷的保密,印刷的时间都比较晚,结果出意外了。”还是没考成,现在其他城市的笔试结束了,有同学分享了试卷,就来做做吧,这套题不知道是哪个城市的,也不清楚不同的城市笔试题是不是一样。。。图片内容来源于网络, 答案自己做的。------------------------------------------------------1-5: C A 阅读全文
posted @ 2013-10-25 11:15 天天向上... 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://www.douban.com/note/60936243/经过几年的发展,公司在互联网公司里面也算是大公司了,线上机器使用的操作系统都是Linux,部门有几个同事,天天都跟Linux打交道,所以,我就一直在考虑,这些同事的进阶之路在哪里,怎么样就算是一个Linux高手了呢?在网上了搜索了一下,有一些人说的还是值得考虑一下:我玩了10年的Shell编程,还不敢说自己精通Shell。别说其他的,你能把shell真正搞通,已经比大部分拿1万以上月薪的system admin强了。Linux操作系统主要就是一些配置文件和一些命令行工具,要掌握操作系统的主要目录结构和配置文件,运用 阅读全文
posted @ 2013-10-25 11:11 天天向上... 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://zhidao.baidu.com/question/131261452.html我就是做LINUX下的C开发的。准确的说,LINUX下C才是主要的开发语言,但是写应用程序还是要用面向对象的,尤其是图形界面的,不如QT和X和GTK等等。下面说的必须要求你C语言学的很好而且会使用LINUX的情况下。LINUX常用命令要熟悉。要学LINUX下的C编程,先看一两本LINUX下C的书比较好,这个你自己选择,但是经典的书还是好一些,比如《LINUX程序设计》、《UNIX环境高级编程》,看这些的时候把书上的例子选择一些自己编译一下,哪怕是照着敲进去,事半功倍。看完一本这样的书,你对LI 阅读全文
posted @ 2013-10-25 11:10 天天向上... 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://blog.csdn.net/lushitianxia/article/details/10400977汉克时代是外包公司。。这公司是外包到华三做项目。。面试情况 不好。。主要关注了 两个问题。。1字节序问题。。写个程序验证本机字节序。不会答案:union test{short i;char str[sizeof(short)];}tt;tt.i = 0x0102;然后打印str[0],str[1];希望读者自己分析一下。。2socket有几种类型。。我擦。。就流套接字。。数据报套接字。原始套接字。。分别对应tcp ,udp,和内核数据。。剩下的 就忘了。。就这两个 我日。 阅读全文
posted @ 2013-10-25 11:09 天天向上... 阅读(3276) 评论(0) 推荐(0) 编辑
摘要: 源地址:http://www.cnblogs.com/zzx1045917067/archive/2012/12/19/2824552.html内核空间和用户空间是现代操作系统的两种工作模式,内核模块运行在内核空间,而用户态应用程序运行在用户空间。它们代表不同的级别,而对系统资源具有不同的访问权限。内核模块运行在最高级别(内核态),这个级下所有的操作都受系统信任,而应用程序运行在较低级别(用户态)。在这个级别,处理器控制着对硬件的直接访问以及对内存的非授权访问。内核态和用户态有自己的内存映射,即自己的地址空间。处理器总处于以下状态中的一种:1、内核态,运行于进程上下文,内核代表进程运行于内核空 阅读全文
posted @ 2013-10-25 11:07 天天向上... 阅读(210) 评论(0) 推荐(0) 编辑