📜  Walmart Labs 面试经历 |设置 14(校内)

📅  最后修改于: 2022-05-13 01:58:12.109000             🧑  作者: Mango

Walmart Labs 面试经历 |设置 14(校内)

第一轮(在线编码测试)

第一轮由 3 个编码问题组成,在hackerearth 平台上进行(测试时间:1 小时 30 分钟):-

问题 1:以小于 O(n^2) 的时间复杂度计算数组中的反转次数。

问题2:检查字符串是否有效。如果一次删除两个不同的字符,则字符串有效,最后只剩下一个字符。如果字符串为空,则无效。如果字符串有效,则打印剩余的字符。

输入:aaabb

输出:是的

一种

输入: aabb

输出:否

解决方案:如果任何字符的计数超过字符串长度的一半,则只有它是有效的字符串。时间复杂度:O(n)

问题 3:给定两个字符串s1 和 s2,其中 s2 是回文串,如果允许我们以任意顺序排列 s1,则有多少子串(s2)。

输入: aabb aba

输出:1

输入: aabbaabb aba

输出:2

解释:如果我们将 s1 排列为 abab,我们将有 1 个子串,即 s2 (aba)。类似地,如果我们将 s1 排列为 abbabbaba,我们将有 2 个子串是 s2(aba)。

解决方案:求 s1 中每个字符的计数。求 s2 中每个字符的计数。求(s1 中的“x”计数/s2 中“x”的计数)的最小值,其中 x 是 s1 和 s2 中存在的任何字符。时间复杂度:O(n)。

Round-2 (技术面试 Round-1)

1)谜题 20 | (5个海盗和100个金币)

2) 给定一个生成 1-5 范围内的随机数(包括两者)的数字,使用此函数创建一个生成范围 1-7(包括两者)的随机数的函数。

3) 找出给定代码的复杂度。