据说是腾讯php程序员面试题目 蛋疼..要是提供PHP手册就HI了..
1、以下题目,除了编程任务外其他都需要写在给你提供的草纸上。纸张是珍贵的地球资源,请节约使用。编程任务在有相应的环境时,会要求上机书写,实在没有条件,就只能写在草纸上了。
2、时间:
基础任务+进阶任务+设计任务 = 90分钟
编程任务 = 60分钟
基础任务:
1、请列举你能想到的UNIX信号,并说明信号用途。
2、请列举、你能想到的所有的字符串查找算法,并加注释简单说明。
3、有一个IP地址(192.168.0.1),请写出其32位无符号整数形式。
4、写出、你能想到的所有HTTP返回状态值,并说明用途(比如:返回404表示找不到页面)
基础任务-选作(会得到额外分数):
1、画几个你最熟悉的SERVER端模型出来(格式不重要,尽量将图画清楚,说明思路即可)
进阶任务:
1、PHP的垃圾收集机制是怎样的?
说明:
1)如果,你熟悉PHP源码,那么请从源码入手,回答些问题,会获得额外加分
2)如果,你不熟悉PHP源码,那么尽你所能,多写点东西,包括利用自己的编程直觉得到的信息,都可以。
3)对,则有分,错误不扣,不写无分。
2、请写出HTTP头,并符合以下要求:
1)这是一个post请求
2)目标:http://www.example.com:8080/test
3)POST变量:
username: test
pwd: test2
intro: Hello world!
4)包含以下COOKIE信息:
cur_query: you&me
说明:
1)如果,你记不得某个HTTP协议中的指令字了,那么,无奈这举是用“汉字”代替。
2)如果,你能记住更多的HTTP协议指令字,那么多写几句,总是没坏处,对吧?
3)最关键的,只需要画出正确的“轮廓”(还记得httpwatch等工具打印出来的头部吗?那就是“轮廓”的含义),也会有分数,但如果,连“轮廓”都写错了,那么就很遗憾了。
设计任务:
1、最近总有人骚扰我们的投票模块,需要你来设计一个投票限制的东东
要求如下:
1)要求每个QQ号码(假设此QQ号码在UNIT32内可以表示)10分钟这内只能投5票。
2)我们的用户很踊跃,平均每天要有2000万人左右通过此程序投票。
说明:
1)无需写代码,只需要图跟文字即可。
2)对于关键逻辑,请用图加代码表示出来,这也是对你文字表达能力的一个考验。
3)对你能想到的所有的边界条件列出来,这是对你逻辑思维全面与敏捷性的考验。
4)存储部分,尽你所能吧。如果,你需要一个自己设计的存储层,那么把这个存储层的实现,用文字+图片方式描述清楚,要是设计合理,你会获得华丽的奖分。
编程任务:
1、我们碰到了×××烦,一个新来的传教士惹恼了上帝,上帝很愤怒,要求我们把圣经(bbe.txt)背熟,直至他说哪个单词,我们就要飞快的回答出这个单词在第几行第几个单词位置。听说你是个优秀的程序员,那么髟助我们完成这个不可能的任务吧。
要求如下:
1)/myworks/example/bbe.txt,98版本英文圣经一本
2)输入部分要求如下:php ./example.php [单词]
3)输出部分如下:[单词] 1,2 2,4 5,6 表示:此单词在1行2列(第二个单词),2行4列…
说明:
1)此文本4MB之巨…
2)单词的含义:由英文字母(大小写),数字(0-9)组成的串
3)提供给你的机器OS为ubuntu 9.10,内存只有1G,而且,很不幸的,其中700M用来做了别的
4)上机考试不允许上网,但我装了man文档以及读取CHM以及PDF的阅读器,在电脑的桌面的CHM文件夹中,有相应的PHP参考手册
5)算法复杂度要求不能大于O(N^2)(就是N的平方)
6)什么?PHP低效且用起来不顺手,好的,你可以用别的语言来实现。但注意:提供给你的机器上只有python 2.4/perl 5.8/gcc[g++] 4.1
转载于:https://blog.51cto.com/dapingguo/469178
相关文章:

C功底挑战Java菜鸟入门概念干货(一)
一、认识Java 1、Java 程序比较特殊,它必须先经过编译,然后再利用解释的方式来运行。 2、Byte-codes 最大的好处是——可越平台运行,可让“一次编写,处处运行”成为可能。 3、使用 classpath 可以指定 class 的运行路径。 二、走…

c# lock (obj) 与 lock (this) 区别
lock(obj) 锁定 obj 对象 lock(this) 锁定 当前实例对象,如果有多个类实例的话,lock锁定的只是当前类实例,对其它类实例无影响。 直接上代码。 主窗体代码如下: delegate void SetTextCallback(string text);public Form1() …

【js】四种自定义对象的常见方法
<html><head></head><body><script type "text/javascript">//方法1var stu1 new Object();stu1.stuName "小强1";stu1.stuNo "123";stu1.print function() {alert(stu1.stuName);}//stu1.print();//alert(s…

eclipse启动时报错An internal error occurred during: Initializing Java Tooling.
eclipse启动时报错An internal error o当前工作目录文件夹下的 /.metadata/.plugins/org.eclipse.core.resources/.project。就是把初始化的项目删除,然后打开eclipse以后可以重新初始化。转载于:https://www.cnblogs.com/huanlingjisi/p/8696541.html

给Sqlite数据库设置密码
免费版Sqlie是不提供设置密码功能的,经过查阅资料最终找到了解决方案 方案一,从sqlite源码入手,据说sqlite源码已经提供了加密的接口,只是免费版没有实现,可以参考这位仁兄的博客以了解详情:http://www.cnb…

《创新者》读书笔记 PB16110698 第五周(~4.5)
本周我阅读了某同学推荐的《创新者》,这本书实际上是两个世纪以来信息技术的编年史,从巴贝奇的差分机到如今互联网时代的超级计算机,作者通过各个时代里一位位杰出的创新者,将计算机诞生、发展、崛起和蓬勃的历程娓娓道来。从一篇…

001本周总结报告
在本周中,自己主要做了小学期的编程作业,因为是小学期的特殊缘故,自己的学习时间几乎分配给了小学期的作业的编程,大约每天会抽出5个小时用来编写程序,本周在做小学期的作业时发现自己编程力不从心,无论是从…

【js】创建数组的三种方法
<html><head></head><script type"text/javascript">//数组var stuName1 new Array();stuName1[1] "小强1";stuName1[2] "小强2";//alert(stuName.length);//声明并穷举数组var stuName2 new Array("小强3&quo…

JSon数据查询---Jlinq
LINQ,语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。 Jlinq受到LinQ的启发,可以像LinQ一样查询JSON数据,使用…

PowerShell 2.0管理事件日志(一)查看和读取事件日志
事件日志是操作系统用来保存本身及其他程序信息的工具,本文将会介绍如何通过PowerShell脚本阅读事件日志并创建新的日志条目。Windows系统中包含多种事件日志,在Windows XP系统中包括4种主要的事件日志。即应用程序、系统、安全性及Internet Explorer日志…

Applet相关知识
1、Applet定义 Applet是采用Java编程语言编写的小应用程序,该程序可以包含在 HTML(标准通用标记语言的一个应用)页中,与在页中包含图像的方式大致相同。含有Applet的网页的HTML文件代码中部带有<applet> 和</applet>这…

python threading ThreadPoolExecutor源码解析
future: 未来对象,或task的返回容器 1. 当submit后: def submit(self, fn, *args, **kwargs):with self._shutdown_lock: # lock是线程锁if self._shutdown:raise RuntimeError(cannot schedule new futures after shutdown)f _base.Future() # 创建fut…

【js】内置对象array的常见方法的使用
<html><head></head><script type"text/javascript">//数组var stuName1 new Array();stuName1[1] "小强1";stuName1[2] "小强2";//alert(stuName.length);//声明并穷举数组var stuName2 new Array("小强3&quo…

《学习vi编辑器》的学习笔记1
第一章 vi文本编辑器 打开文件vi [filename] 输入:q在缓冲区中内容和磁盘内容一致的时候退出,否则就需要输入:q!来忽略这个限制,不保存缓冲区,直接退出 命令模式:每次输入都表示一个命令. 插入模式:输入的一切内容都将吃味文件中的文本 :wq(属于ex编辑器)命令等价于ZZ命令,就是…

Android的API与差异化之路
Android的API与差异化之路 发挥Android特色:框架API和开源(开放) Android平台就如同长城般,两岸的硬件业厂商就如同关内居民,是建造长城的最先获利者。也基于这样的效益,让许多硬件大厂竞相拥抱Android&#x…

Oracle 高效分页
-- 分页 select * from t_user5 select count(1) from t_user5 --10,485,760 -- rownum是一个查询后的结果,查询之前是不存在的 select rownum,rowid,tt.* from t_user5 tt where rownum<3 and sex1 and rownum>2 -- 对结果进行查询 -- 思路1,r…

Data - 【转】数据分析的道与术
简要说明 本文来自网络流传的“百度内部培训PPT - 数据分析的道与术”,版权属于“百度”,如有冒犯,即刻删除。PDF下载 - 数据分析的道与术什么是数据分析(道) 1 - 数据分析是什么? 2 - 什么是做好数据分析的…

ruby生成C++头文件引用关系图
首先生成graphviz的dot格式文件 require find class RefNodeattr_accessor :name,:reference end include Find if __FILE__ $0name "name"dot []h Hash.newputs ["digraph #{name}{","overlap false","spline true","rank…

【js】内置对象String的常用方法
<html><head></head><script type"text/javascript">var stuName1 "小强1";var test "abcdcab";//alert(stuName.charAt(1));var stuName2 "小强2";//alert(stuName1.concat(stuName2));//alert(test.inde…

关于Linux静态库和动态库的分析
From:http://hi.baidu.com/bdccutysj/blog/item/5bae7f0202abac7c3912bb15.html1.什么是库 在windows平台和linux平台下都大量存在着库。 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。 由于windows和linux的本质不同,因此二者…

求解|x-y|最小
问题:输入数组a和b,请通过交换的方式重新分配两个数组,使得|a-b|最小 提供一种思路: 当前数组a和数组b的和之差为 A sum(a) - sum(b) a的第i个元素和b的第j个元素交换后,a和b的和之差为 A ( sum(a) - a[i] b…

最老程序员创业札记:全文检索、数据挖掘、推荐引擎应用50
广告客户吴言之前也研究过互联网广告业务模式,具体来讲可以分为六大模式:门户网站广告模式、搜索引擎广告模式、社会化网站广告模式、视频网站广告模式、植入式广告模式、广告联盟模式。对于门户网站广告模式来讲,这是一种push模式࿰…

终于遇见——王阳明
一个厉害的人 王阳明,五百年来的一个圣人,最后总结了四句教:无善无恶心之本,有善有恶意之动,知善知恶是良知,为善去恶是格物。看完王阳明的一生,再看到这四句话时,直让人发怔&#x…

【jquery】jquery基础知识
总体介绍: jquery是一个js的类库,为了减少代码量实现更多的功能 1、jquery使用需要引入jquery的类库,其中有一名称带min(产品版)有一个不带min的(开发版),作用相同。当我们同网页打…

针对19端口的Chargen进行Dos***
先普及一下基础吧: 英语全名:Character Generator Protocol 汉语:字符发生器协议 默认端口:TCP 19,UDP 19 本协议在RFC 864中定义。 在TCP连接建立后,服务器不断传送任意的字符到客户端,直到客户…

TCP/IP 简介
原文:TCP/IP 简介 第一节:TCP/IP 简介 第二节:TCP/IP 寻址 第三节:TCP/IP 协议 第四节:TCP/IP 邮件 TCP/IP 是用于因特网 (Internet) 的通信协议。 计算机通信协议 计算机通信协议是对那些计算机必须遵守以便彼此通信的…

MyEclipse提示键配置、提示快捷键、提示背景色、关键字颜色、代码显示
1、提示键配置一般默认情况下,Eclipse ,MyEclipse 的代码提示功能是比Microsoft Visual Studio的差很多的,主要是Eclipse ,MyEclipse本身有很多选项是默认关闭的,要开发者自己去手动配置。如果开发者不清楚的话&#x…

【jquery】用jsp写jquery的模板
代码实现: <% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dt…

《网页设计创意书》读后感
刚刚收到《网页设计创意书》,确实有点惊喜,开始以为是像之前审读的书一样是一叠叠的打印纸,没想到是一本成品书,拿到手上沉甸甸的,随便翻看了一下,没想到里面竟然还是全彩页印刷的,本书的第一感…

博客园的博客积分与排名查看方法
我是今天才知道,out。因为这东东默认是不显示的,因此找不到。 注意:只是你在博客园的博客的积分排名,而不是你的在博客园的排名。 设置-博客设置(博客后台管理)-选项-积分与排名打勾。刷新你的博客页面即可…