论坛首页 招聘求职论坛

赴盛大面试,分享几个面试题

浏览 21707 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-12-06  
下一站,火星 写道
(A(B)(C(D)(E))F)

可以用一行正则表达式做


求正则解决方案
0 请登录后投票
   发表时间:2010-12-06  
0704681032 写道
貌似咱们学校没人学php..人才比较稀缺


目前很少有学校开PHP课程

都靠自学
0 请登录后投票
   发表时间:2010-12-07  
其实感觉,不是校园招聘的话,透露别人面试题不太好吧.
0 请登录后投票
   发表时间:2010-12-07  
不考虑左右括号是否完全匹配的话,如下

function getcontent($findLoc,$str){
    $start=-1;$end=-1;$left=0;$count=0;
    $subCount=0; //位置找到后的左右括号匹配计数
    for($i=0;$i<$len;$i++){
        if( '('==$str[$i] ){ 
            $count++;
            if( $count==$findLoc ) $start=$i; //找到,记录开始位置
            if( -1!=$start ) ++$subCount; //找到后重新记录左括号计数
        }
        if( ')'==$str[$i] ){ 
            // 有开始位置后才开始匹配结束
            if( -1!=$start ){
                $subCount--;
                // 左右括号匹配完成后记录结束位置并跳出循环
                if( $subCount==0 ){
                    $end=$i;
                    break;
                }
            }
        }
    }
    //echo "开始: $start \t结束: $end \t";
    return substr($str,$start,$end-$start+1);
}


要考虑左右括号完全匹配的话,加上左右括号计数,左括号增,右括号减,最后一比是否为零就好了
0 请登录后投票
   发表时间:2011-03-09  
黑暗浪子 写道
jancy 写道

昨日赴上海盛大面试,应聘PHP工程师。

 

提前10分钟来到一楼大厅,大门口和门禁处都有2个门卫,俨然一副“正规军” 的样子,给人一种很严肃的感觉。

在大厅豪华访客接待座上等了几分钟,一美女拿着访客证过来带我上了4楼,把我“转交”给一位挂“红绳”的大哥。

然后进入一小会议室,开始“受审”:

首先,简单的介绍一下你自己。

叽里呱啦…叽里呱啦…

抖完家底后,开始技术问题:

1、HTTP协议中几个状态码的含义:503 500 401 200 301 302...

2、Safe_mode 打开后哪些地方受限.

3、熟悉哪些PHP开源框架,分别说说你对它们的理解。

4、熟悉jquery吗,谈谈它的选择器实现原理。

5、什么是怪异模式,标准模式,近标准模式。

6、围绕盒子模型讲一下,各浏览器在CSS渲染方面的差异。

以上都是考查基本知识

7、搭建和优化过lnmp环境吗?谈谈你是如何优化的,针对nginx、php、mysql分别讲述。

8、有一张表order(order_id,user_id,order_amount),写一条查询语句,取出所有消费总额超过100的用户的所有订单号order_id。

 

9、有一字符串格式如下:

 

(A(B)(C(D)(E))F)

字符串中的括号成对出现,写一函数取出第N(以左括号出现的顺序来索引)对括号里的内容。

 

例如:

 

function getcontent($id,$str){
...
}
$str = '(A(B)(C(D)(E))F)';
getcontent(3,$str);
  

 

得到结果为(C(D)(E))

 

 

恳请各位大虾谈谈最后2题的最优解答。

看见第1题我就想起六月份去盛大面试那次了。这个问题也问过我,我直接回答:孔乙己老是问人家茴字有几种写法,你还记得你老师教过你这4种写法吗?然后面试官就问下一个问题。这年头面试可真是很让我哭笑不得,这种nc问题也问得出,是不是随便拉个人就可以做面试官了?

这种考的就是对基础知识的掌握。

0 请登录后投票
   发表时间:2011-07-15  
public static String getContent(int index,String src)
	{
		char[] cs=src.toCharArray();
		int count=1,countLeft=1,countRight=1;
		String result="";
		for(int i=0;i<cs.length;i++)
		{
			char c=cs[i];
			if(c=='(')
			{
				if(count==index)
				{
					for(int j=i;j<cs.length;j++)
					{
						char c2=cs[j];
						if(c2=='(')
						{
							countLeft++;
						}
						if(c2==')')
						{
							countRight++;
						}
						if(countLeft==countRight)
						{
							result=src.substring(i, j+1);
							break;
						}
					}
					break;
				}
				count++;
			}
		}
		return result;
	}
	
	public static void main(String[] args)
	{
		String src="(A(B)(C(D)(E))F)";
		System.out.println(CoupleBrackets.getContent(5, src));
	}

突破口:确定括号index之后,只要找到此index的左括号的索引,然后向后遍历,左括号等于右括号时的索引即为结束点
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics