|
从接到华为面试电话那天起就在想,到底要不要走。去了是不是浪费自己的时间,在大脑反复的琢磨。直到今天早上起床的时候都在犹豫。发到我的邮箱的内容如下:
华为招聘:请于本周六8:30到浦东峨山路91弄98号陆家嘴软件园餐厅二楼参加工具开发部的技术面试,接待人张小姐,请带学位证、毕业证、英语四六级证、身份证以上四证的原件及复印件,简历,笔。若无法参加面试,请反馈给13661609375张先生。交通:地铁四号线到蓝村路下,219、东川线、871、隧道9线、970、619、819、610等到峨山路的车。
怎么是早上8:30呀!那我还不要6:30就要起床,因为要坐共交还要座地铁,真是够折磨人的。真的去了面试的地方太知道自己错,错在自己太守时了。实际上用不着去那么的早的。因为他有很多的场次,这场赶不上就下场,反正就一天的时间。听说是四面,到底是几面后面再说。接着往后说,我拿了一份应聘登记表,一五一十的填写个人相关的信息,具体什么内容,只要参加过相关面试的人都知道。接着就是上交应聘登记表,等待相应的面试官,在这过程中有两面,都是技术方面的面试。第一、问问相关的工作经历什么的。第二、就是做Java方面的面试题。不是我说,那Java面试超级的简单,都是我博客里的相关题目,这里我就说下最后那个编程题吧。
java 代码
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。
- public class ThreadTest1{
- private int j;
- public static void main(String args[]){
- ThreadTest1 tt=new ThreadTest1();
- Inc inc=tt.new Inc();
- Dec dec=tt.new Dec();
- for(int i=0;i<2>
- Thread t=new Thread(inc);
- t.start();
- t=new Thread(dec);
- t.start();
- }
- }
- private synchronized void inc(){
- j++;
- System.out.println(Thread.currentThread().getName()+"-inc:"+j);
- }
- private synchronized void dec(){
- j--;
- System.out.println(Thread.currentThread().getName()+"-dec:"+j);
- }
- class Inc implements Runnable{
- public void run(){
- for(int i=0;i<100>
- inc();
- }
- }
- }
- class Dec implements Runnable{
- public void run(){
- for(int i=0;i<100>
- dec();
- }
- }
- }
- }
java 代码
- 编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。
-
- 答:代码如下:
-
- package test;
-
- class SplitString {
- String SplitStr;
- int SplitByte;
- public SplitString(String str,int bytes) {
- SplitStr=str;
- SplitByte=bytes;
- System.out.println("The String is:'"+SplitStr+"';SplitBytes="+SplitByte);
- }
-
- public void SplitIt() {
- int loopCount;
- loopCount=(SplitStr.length()%SplitByte==0)?(SplitStr.length()/SplitByte):(SplitStr.length()/SplitByte+1);
- System.out.println("Will Split into "+loopCount);
- for (int i=1;i<=loopCount ;i++ ) {
- if (i==loopCount){
- System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length()));
- } else {
- System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte)));
- }
- }
- }
-
- public static void main(String[] args) {
- SplitString ss = new SplitString("test中dd文dsaf中男大3443n中国43中国人0ewldfls=103",4);
- ss.SplitIt();
- }
- }
-
这个我做的很不错已经给了面试官一个不错了印象,然后就让我做数据结构相关的题目。拿起试题就感觉到有点不对劲了,以前很熟悉的链表,遍历等等现在脑子里一点概念都没有了。随便做了下,结果很不理想。所以说想去华为面试之前一定要把数据结构的东西再回味一下。可能因为Java面试做得不错的原因吧,第一面就这样过了。等了一会,第二面开始了,先也是很谈谈工作经历什么的,接着就是让我做一份与操作系统相关的题目,然后就提了几个问题,就这样我的二面就过了,可能这就是他们一惯面试流程。面试官说你到下午1:30再进行三面吧。整个二面完是10:30左右。这就是说我的技术面试都面完了。
听说中午可以免费在华为的食堂吃饭,这个都是蛮不错的,还没有一个公司面试还提供免费午餐的。等到吃饭的时间去领了张饭票,上面的标价是9元。我随便先了二、三个就11元,只好自己再补二元。哈哈。。感觉不错,比我们以前公司里的食堂的饭菜强多了。中午休息的时候找到了个打乒乓球的地方,不过要收费(场地费6元,租用球拍2无,乒乓球2元,时间一个小时),好几年都没有打乒乓球,比较的爽。
反正等了很久再到三面。我们正式三面时候是5:00左右的样子,进去之后就来个自我介绍,由于我是坐在第一个坐子,因此从我第一个开始自我介绍。我一开始说了太多,被面试官打断了说你说简单点,就说说你的优点、缺点、个人爱好就可以了。由于我是第一个说的,不是很理想。每个人介绍完后面试官就发话了,你随便的说说在所有的自我介绍中谁给你的影响最深。然后一个一个接着发言,竟然有人说我对他留下的影响最深,说我是第一个发言的,还能随机应变,我那个时候真的很爽。。哈哈。我猜可能是因为我们有共同的爱好足球,所以才给他留下的影响最深。不管怎样还是很谢谢他。接下来就是相关活动的游戏测试。具体如下:接这次三面的人分成二组A,B,共同去完成这样的一件事。假如我们在月球上的飞船碰到了相应的故障,放在飞船上的物资要做相关的处理,下列的15种物资(水、氧气、食物、指南针、地图、PM、信号弹、急救箱、火柴、50米的绳子等等)中你会怎样排选,把你认识最不可少的列在第一位,如此类推。我就是在这个环节中被淘汰的。
今天刚刚面试完,回来就把全部的相见相闻都写了下来。不管怎样,有这样的一次面试机会真的是收获不小。因为在此之前我从来没有见过样的面试场面,大概有1000号人左右吧。下次有机会一定还要去华为面试。
|
|
|