首篇博客,简单谈下自己,笔者是华东师范大学计科与软院研二学生,自己的技术背景或者资本,就是本科自学 Java 编程,写过一些游戏和 JavaWeb 应用,研究生阶段在各种 Cloud+AI 的煽动声势下又自学 python 和 scala 两种语言用于后面算法的学习,神经网络,深度学习跟着吴恩达视频和周莫烦鼓捣过一段时间,理论和实践不是很深入。遂后来放弃机器学习算法转而熟悉大数据相关技术,Hadoop看过大象书,按照博客和视频学习,包括 Hive,HBase,kafka,zookeeper 都在虚拟机下操作过,后集中精力学习 Spark 分布式计算框架,编写一些 demo 对海量数据做简单处理,但是对框架原理和调优还不是很熟悉。在这样的情况下,决定就 Java 后端研发和大数据开发两个方向作为实习选择。在华为这里就是投的大数据开发实习岗。下面记录了从宣讲到面试结束的过程,一周后会出结果,到时候再做更新。对了,笔者是本科数学研究生密码学,本专业浅尝辄止,勉强能毕业,苦笑~

大概一个半月前(现在刚结束技术面)华为宣讲会,去得人还是蛮多了,勇敢星实习在HR们的介绍下内容还是很丰富的,同时还有我校的校友介绍的华为的精英大赛,分了网络精英,算法精英,销售精英。这些比赛的奖励都还是很有含金量的,各种直通特权,但难度也可想而知,现场讲了一道往届的题目,被搞晕了。在宣讲会大概记下了网申,笔试等信息,结束就回去了。

宣讲会后不到三周(只要截至时间前投出简历),笔试通知就下来了。三道编程题,测试环境有几点:

1,摄像头

2,可以本地 IDE 编辑代码,复制到 OJ 上提交

3,全程录屏(这个措施还是能判别出大部分不那么正规答题的情况,不是按自己思路写的话,很容易看出来代码是腾挪的)

第一道:连续输入字符串(输入字符串个数为N,每个字符串长度不大于100,输入字符串间按照空格键分隔),请按长度为8拆分每个字符串后输出到新的字符串数组,输出的字符串按照升序排列。长度不是8整数的字符串请在后面补数字0,空字符不处理。

输入样例1:
                   2 abc 123456789    注:2 = N 输入字符串个数
           输出样例1:
                   12345678 90000000 abc00000

第二道:给定一个字符串,字符串包含数字、大小写字母以及括号(包括大括号、中括号和小括号),括号可以进行嵌套,即括号里面可以出现数字和括号。按照如下的规则对字符串进行展开,不需要考虑括号不成对不匹配问题,用例保证括号匹配,同时用例保证每个数字后面都有括号,不考虑数字后面没有括号的这种情况,即2a2(b)这种情况不考虑。

输入样例1:
                   abc3(mlg)
           输出样例1:
                   glmglmglmcba
           输入样例2:
                   abc3(A)4(mufasa)
           输出样例2:
                   asafumasafumasafumasafumAAAcba
           输入样例3:
                   abd2(3{4[q]w}e)
           输出样例3:
                   asafumasafumasafumasafumAAAcba

第三道:一张N*M的地图上每个点的海拔高度不同;从当前点只能访问上、下、左、右四个点中还没有到达过的点,且下一步选择的点的海拔高度必须高于当前点;求从地图中点A到点B总的路径条数初以10**9的余数。地图左上角坐标为(0,0),右下角坐标为(N-1,M-1)。

输入描述:第一行输入两个整数N,M(0<N<=600, 0<M<=600)用空格隔开;接下来N行输入,每行M个整数用空格隔开,代表对应位置的海拔高度(0<=海拔高度<=360000);最后一行四个整数X,Y,Z,W;前两个代表A的坐标(X,Y);后面两个代表B的坐标(Z,W);输入保证A,B坐标不同,且坐标合法。
           输入样例1:
           4 5
           0 1 0 0 0
           0 2 3 0 0
           0 0 4 5 0
           0 0 7 6 0
           0 1 3 2
           输出样例1:
           2

输入样例2:
           4 5
           0 1 2 1 0
           0 2 3 2 1
           0 0 4 5 2
           0 8 7 8 9
           0 4 3 4
           输出样例2:
           10

之前做了一套微软的笔试题,然后刚看到这三道题,难度上松了一口气,毕竟前两道肯定就是字符串处理,利用 Java 封装好的对象还是很快会有思路。先简单说一下前两道题:

第一道,首先就是判断每个字符串的长度,小于长度 8 补齐,否则截取(substr method)前八位作为一个新的字串,直到把字符串截取多段长度 8 的字串,最后一段不够则补齐

所有长度为 8 的字符串统统放到容器(Collection)里,Java 有现成的 sort 方法,将容器里所有的字符串按照字典顺序升序排列

第二道,这道题目和数据结构书介绍栈的时候,拆解嵌套数学表达式计算结果十分相似,所有没有犹豫直接用栈来处理输入内容

题目就是说,遇到 number(string) 这种组合,要变成 number 个string 连接起来。先不考虑嵌套,我们压栈时压到右边括号时,此时栈内必须存在一个数字和一个对应的左边括号,我们就不断弹出栈顶元素,直到弹出左边括号的过程中,将括号内字符串暂存起来,考虑栈先进后出的特性,需要把字符串 reverse 一下,保存了要连接的字符串,还需要知道 number 这个数量,此时这个 number 正好在栈顶,弹出之后,将字符串按照这个数量连接,连接的结果重新压入栈中,number(string) 这种组合,就被按照题目的要求替换掉了。

这个时候再考虑嵌套,让我们思路打开一点,是不是即使嵌套,由于栈的特性上面的处理方法是可以先将嵌套内部替换之后,再接着处理外部的字符串的,这是完全符合要求的。注意三种括号 “{} [] ()” 在写代码的过程过一定对应好流程控制语句。

A了两道题之后,我就觉得是可以有面试资格的。由于第二道编程的时候长度的变量,还有循环的边界没有搞清楚,一开始通过率都是百分之零,调了好多下,最后一次一下子全部通过了,看看这个时候还剩余三十分钟时间。

第三道题,也容易想到 DFS 算法,但是可能并不能通过全部用例,加上我手写 DFS 没那么熟悉,这道题就放弃了。这道题的解法网上有很多优秀的算法,这里有时间再转述。

笔试结束,华为的面试来得稍迟。上海的面试地点是在一家四星酒店宴会厅,摆了 40 张两米长桌,同时可以面 40 位同学,虽然大家都在一个空间中,但丝毫不用担心旁边的对话会影响到你和面试官的对话,大家都是高度集中的。等候区有甜点咖啡水果,中午有自助餐券,哈哈,不错!

先说第一面,面试官上来说了我们是老乡,顿时松缓了一下心情。自我介绍,和上面说的技术发展和意向差不多,然后面试官就开始抛问题出来,期间答得还没深入一点的时候,面试官就说下一题了,也不知是帮助我还是面试官也搞不定太深的内容。其中回忆起来的有:

面向对象的特性有哪些?

Linux 的常用命令?

数据库增删改查会吗?会的话举例子?

举例子说明表的几种 join 的区别?

消息中间件知道哪些?什么场景用?有哪些好处?

……

特别基础感觉像本科科班的期末卷子,过程也零碎,可能价值也不大,回忆有些困难就打住了。感觉一面不会拖后腿至少,午餐之后等来了二面。

和二面面试官开始没多大一会儿,就知道这是一个谈笑间能把人问透,问死的人。头发不多,眼神精确,经验足,说话直接了当,看你迟疑就认定你不会直接跳下一题,所以满打满算大概有半个小时,时间相当短促,或许面试官已经知道我几斤几两,把我简历一合,让我回去等结果。

首先问的是实习经历,我有两段实习经历,SAP 打两个月酱油, 然后在一家中型大数据基础平台公司实习。表述自己的实习内容的过程中还是润色了一下,但是面试官中间发话钉住我,你参与这个系统开发,你到底了解不了解,底层怎么实现的?能不能讲清楚?我说去的时候大体已经写好,自己也是有一些根据需求做改动的任务。

跟实习相关的流计算这一块,聊到 Spark,问,你了解 Spark 的内核原理不?我因为看过网上分析的文章,随口就说了声了解,也看了源码。结果真正作答的时候,卡壳,driver,scheduler,task 等等基本概念都联系不起来,给面试官的印象相当不好。

然后问 Java 设计模式了解不?说说看。我就从单例出发,聊了工厂,装饰器,其它的没多说。面试官又问,为什么要用这些设计模式?就从解耦,扩展等方面说了个大概。

然后直接问 JVM 了解不?说一说。刚开始听到感觉问题好宽广,想着就从 GC 开始吧,没说两句打断我,先说说内存吧。然后就想着说堆,栈,方法区等等,他说还有呢!我想了一会怯怯的说:“缓存?” 面试官白了我一眼开始问下一题了。

然后聊了一下我的学术论文,虽说我是浅尝辄止,但是如果对方不是这个领域的我还是蒙混过去,但是感觉上,面试官内心不喜欢。然后就突然的说,现在你有什么问题?

我就没客气,心想不能这么快结束啊,问了三个问题,个人选择,职业发展,面试交流和简历上的缺陷。面试官大人一条一条跟我说了,末了给我说多看看原理,多实践,言下之意我也能知道,自己这方面做的不足。

迫不及待回了学校,一周后出结果。

华为2019勇敢星实习生笔试面经相关推荐

  1. 华为2019勇敢星面试失败

    昨天晚上考完数电,凌晨两点才到的深圳.早上十一点,到了喜来登酒店参加华为的实习生面试.结果,失败了.面试官直接和我说准备秋招吧.状态码查询也是41,没过.这已经是自己自第一家海康威视起,第四次面试失败 ...

  2. 华为2018届校招勇敢星实习生招聘笔试+面试经历

    写在前面   之前一直在忙期末,最近才歇了下来,来总结一下之前参加华为2018届勇敢星实习生笔试+面试(研发类)并顺利拿到offer的经历.   我是在微信上投的Android研发实习生岗,很快就收到 ...

  3. 华为勇敢星实习生招聘面试经历和华为优招面试经历

      我参加的是华为2017年(针对18年毕业的应届生)武长地区的华为优招,面试之前也在网上搜了很长时间的关于优招的面试经验贴,没有搜到多少相关的资料.所以写下这篇帖子,希望能够帮到后续参加华为优招的同 ...

  4. 华为2019勇敢之星软件岗实习生笔试-截取字符串

    题目描述: 在GBK编码下,请编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但是要保证汉字不能被截取半个,同时忽略字符串中的数字后输出最终结果 输入描述: 一行字符串和 ...

  5. 华为2018勇敢星实习软件类笔试(java)

    本人化学小硕一枚,因为本行业对我这种缺钱的人来说太不友善,无奈要走上码农之路.虽然本科阶段辅修过武汉七校的CS双学位,但是理论和技术一直都很渣,python和java还是稀烂.马上就要找工作了,现在连 ...

  6. 华为面试:勇敢星实习生

    技术面 1.java 面向对象的三个方面,请讲述. 2.mysql数据注入,自己举例子,如何解决mysql注入的安全问题 3.hadoop和spark的区别,使用场景是什么? 4.web安全机制,项目 ...

  7. 2019.4.10-华为-勇敢星实习-笔试题目-第一题字符串处理

    笔试是在牛客网上进行的要求开启摄像头并且共享屏幕 菜鸡如我只AC了第一题-第三题AC了差不多一半 第一题 输入: 第一行输入整数n:接下来输入n行字符串 输出: 将每个字符串拆分成8个字符的子字符串, ...

  8. 华为2018勇敢星实习软件类笔试(3题)4.10版

    1.字符串重排 如图 主要思路是将数字.字母出现的数量用数组f进行记录,按序输出就行. #include<iostream> #include<string> using na ...

  9. 2021-4-28华为勇敢星实习笔试记录

    写在前面:其实第一题第二题都挺简单的,难的是第三题.在考场上第一题对0的处理不好,导致没有AC:第二题其实就完成一个数字到字符串的映射就可以了,然后去环这一步其实不用刻意去处理,因为只要成环的话,它就 ...

最新文章

  1. Cache总义Cache用法之页面声明
  2. 用css打印html
  3. 图灵十月书讯 ——小长假过后的程序员学习指南
  4. python 读取单所有json数据写入mongodb(单个)
  5. IOS开发基础之大转盘案例
  6. C++STL总结笔记(一)—— 容器和容器适配器
  7. 字符串hash(二)
  8. 在一个字符串中找到第一个只出现一次的字符
  9. Python time localtime()方法
  10. 用vue实现简单实时汇率计算功能
  11. 微软武汉.NET俱乐部八月活动
  12. 关于h264bitstream的bug修正及完善
  13. 2019.08.29定时器以及轮播图
  14. php获取td数据,记一次用PHP做爬虫获取全市高考报考数据
  15. 工资的流水与真金、显性物价与隐性物价的名词说明
  16. 前嗅ForeSpider教程:字段的取值与清洗
  17. 思科交换机基本配置命令
  18. 风笑天社会研究方法第5版笔记和课后答案
  19. 【解读】阿里巴巴 MySQL 数据库规约
  20. numpy的文件存储.npy .npz 文件详解

热门文章

  1. 大型手游登录流程详解
  2. 清纯非主流_陕南赤子_新浪博客
  3. 华为鸿蒙手机发布,宣布!魅族携照明类产品加入华为鸿蒙生态
  4. 怎样做好一场高转化的直播?直播间高转化活动如何策划?
  5. LINUX 系统:部署达梦企业管理工具-DEM
  6. 新疆博斯腾湖“冰雪+”让冰雪体育“热”起来 冰雪旅游“火”起来
  7. Java JVM虚拟机参数配置 - GC
  8. 无参考图像的质量评价
  9. python一键登录srun校园网(以深圳技术大学为例)
  10. Raspberry Pi Pico代替鼠标和键盘操作