【华为机考】2022年华为研发人员在线笔试

本文分享了一次华为算法面试的经验,包括使用IDE的建议、考试注意事项以及三道算法题的概述。题目涉及字符串处理,如根据特定规则切分并转换字符串,寻找含偶数个字符'o'的最大长度子串,以及分析两人共同可达目标地点的数量。博客指出字符串处理是华为面试的重点,推荐加强相关算法练习。
摘要由CSDN通过智能技术生成

1、可能关注的事项

  1. 可以使用本地IDE,建议提前用eclipse\idea建一个空项目。
  2. 在开始考试之前有个打开监控屏幕的操作,建议把QQ、微信等会弹窗的软件都关掉,否则可能会记入作弊。
  3. 我做的三道算法题都不算难,在牛客网上的华为题库里,如果你做中等难度的题没有什么大问题的话,基本上都可以做出来,最多是优化内存和运算时间的问题。

2、算法题

  1. 字符串处理
    给定一个常数k,和一个字符串s,s中含有一个及以上的‘-’,以此来连接各个子串。现对除了第一个子串之外的其他子串进行重新划分,每k个字符作为一个子串,使用‘-’连接,同时子串需满足一下条件:
    1. 子串中若大写字母数量大于小写字母数量,则全部转换为大写;若大写字母数量小于小写字母数量,则全部转换为小写;若大写字母数量等于小写字母数量,则不变。
    2. 若子串长度不足k,则剩下的字符组成一个子串。
输入:第一行为给定常数k,指定子串长度,第二行输入为字符串s。
3
124asd-ABCabc-abCABc@
输出:经过处理后的字符串,子串使用'-'连接,不足k长度的子串可作为最后一个子串。
124asd-ABC-abc-abc-ABC-@
  1. 字符串处理
    给定一个字符串s,并且s头尾相连。s中含有若干个字符‘o’,现求s所有子串中,含偶数个字符‘o’的最大长度。
输入:可能含有多行输入,每行输入均为需进行运算的字符串s。
aboloso
ccccccc
输出:含有偶数个字符'o'的最大长度子串
6
7
  1. 路径分析
    两人约定一同前往若干地点,但因地形因素制约,有些地点无法同时到达,现需求出给定的目标地点中,两人都可以到达的个数。
输入:第一行的两个输入为地图的大小,下面的输入为地图的内容(0为无障碍可同行区域,1为障碍地形,
2为两人的位置,有且仅有两个,3为目标地点)。
4 4
2 1 0 3
0 1 2 1
0 3 0 0
0 0 0 0
输出:两人均可到达的地点的个数。
2

3、总结

三个题目都不难,基本上在牛客网的算法题库中算中等难度到简单难度,我并非科班出身,也没有经过系统的算法学习培训,所以我的答案就不列出来了(绝不是因为考完了就删掉了)。
个人感觉华为很注重字符串处理这样的题型,多看看相关的算法题可能会很有帮助。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值