对于笔试题,如果让你出?你会怎么出?
最近比较充实,下班时间都基本上花在了自己的小说网站里,关于这个小说站点来历可以看上一篇文章:记一次面试未如愿之后静下心来的个人成长,对网站里面的很多东西都在不断的尝试,比如说对读取小说章节内容的方式,用HttpWebRequest创建请求,HttpWebResponse接受请求返回的数据方式,发现会时不时报一些异常:服务器提交了协议冲突。这种异常是间断性的,用Socket方式访问读取偶尔有出现:服务器积极拒绝,基础链接已经关闭。后面在网上看了一种封装HttpWebRequest请求方式:
HttpWebRequest t_request = (HttpWebRequest)WebRequest.Create(i_url);
t_request.Timeout = c_time_out;
t_request.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5 (.NET CLR";
t_request.Accept= "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
t_request.Headers["Accept-Language"] = "en-us,en;q=0.5";
t_request.Headers["Accept-Charset"] = "ISO-8859-1,utf-8;q=0.7,*;q=0.7";
指定请求的一些属性,并用委托的形式接受放回的求情数据,发现这种方式比较稳定,并且速度好像没有太大的区别。现在每天看网站产生的日志(我站点日志组件用的是NLog,从介绍看它是基于线程的,并行记录日志,对代码逻辑不受直接影响,这点还是需要验证的,会不会因为记录日志而影响代码的执行速度),分析网站的一些需要改进的地方,每天都会有几个小时放在里面,慢慢的学会了思考,慢慢的习惯了思考,也慢慢的养成了记录思考的习惯,这些都是题外话,写本篇文章是因为,部门最近正在招人,领导闲过去的笔试题目过时了,让兄弟门集思广益,想想题目的事情,于是我想了下面几个题,基本上来源于我对做自己这个网站的一些问题的提炼。
1、 提取字符串中的数字(返回小写的数字,如果不存在可读数字返回0),字符串的特点:可能有大写的数字,比如一万二千三百六十,返回12360,也可能包含小写的数字,比如14520,直接返回14520,有时候可能因为大意把数字中的0写成了o,比如12021写成了12o21。
2、 数据表中有两个字段,一个是siteid,一个是siteurl,数据如下
Siteid | siteUrl |
1 | Abc.com |
1 | Cde.com |
2 | 2abc.coom |
2 | 2abc.coom |
3 | 3abc.coom |
3 | 3abc.coom |
4 | 4abc.coom |
4 | 4abc.coom |
5 | 5abc.coom |
请把这张表数据读入到一个队列里面Queue<SiteInfo>,需要达到每次从该队列里弹出10个SiteInfo,这10个SiteInfo的SiteId都不相同
3、 建一个 windowService 程序,使用50个线程,读取数据库中的一条数据,写到文本文件。每个线程写一个文件,1秒钟一次;每个线程读取的数据不能有交叉;数据库数据条数为100万。
4、 在一张页面访问平率非常高的情况下,有什么办法来提供页面的加载速度,分别从HTML反面和服务器端方面来说明。
5、 在一个业务逻辑比较多枚举的情况下,比如在A条件下执行“select * from A“这条SQL语句,在B条件下执行“select * from B”这条SQL语句,但是条件可能有上百中情况,怎么来写这块逻辑代码。
6、实现一个英语句子的单词逆转,比如“I am come from ShangHai”,输入ShangHai from come am I,单词与单词之间可能有多个空格。
7、在Asp.net中的一张web页面中,有前台aspx页面和后台.cs类,在aspx代码的<body>标签中写入:我是中国人,跟在.cs的page_load方法中Response.Write(“我是中国人”),两种方式是那个先展现在页面上
8、 在一张页面中引用了一张很大的背景图片,用该背景图片中的某一区域来做某个div的背景,用css怎么写?
9、 JS怎么引用.cs里面的变量,比如说.cs里有个变量是 string t_a=”123”,在js中怎么定义个变量来接受t_a的值。
10、一个JS文件里有如下内容:document.write(‘什么东西,这里的内容很长’);页面里在引用该js的地方会输出“什么东西,这里的内容很长”,用什么办法来把“什么东西,这里的内容很长”这个内容动态指定给一个Html控件。
这些题是我随意想的,不具有考究的价值,也不具有什么代表性,但这些题可以说从我最近做得网站用到的知识点里都能找到痕迹,来源于生活,那些是你不会的,如果让你来出题,你会怎么出题?
后记:
回家登陆博客园,居然发现这篇文章上来评论头条,大概的看了下大家的的评论,感觉到了一些人对技术知识点讨论的热情,题目是死的,思路是活的,每个人的观点都有其独到之处,
有些人希望能全面给出答案或者思路,我相信实现的方法会多种多样,在下一篇文章中我将对这些题目谈谈个人的思路,会用伪代码的方式来谈论。
看了下张涛同学的评论:“张韬:楼主英语过几级呀?题目是不会”,简单的几个字却蕴含了莫大的智慧,哈哈。
关于大家的评论我就不一一回复了,大家可以在下一篇文章中发表自己的观点。