下面是篱笆老师为大家整理的最新谷歌面试真题,希望对SDE求职准备秋招的同学们有帮助!
11. 发射信号
给一个Router List, 包含所有router的坐标x,y.
设定Router 的最大无线传播距离为k.
求Router A是否能够把信号传播到Router B
12. leetcode 315
给你一个整数数组 nums ,按要求返回一个新数组 counts 。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。
示例 1:
输入:nums = [5,2,6,1]
输出:[2,1,1,0]
解释:
5 的右侧有 2 个更小的元素 (2 和 1)
2 的右侧仅有 1 个更小的元素 (1)
6 的右侧有 1 个更小的元素 (1)
1 的右侧有 0 个更小的元素
示例 2:
输入:nums = [-1]
输出:[0]
示例 3:
输入:nums = [-1,-1]
输出:[0,0]
提示:
1 <= nums.length <=105-104
<=104<=104
13.在杆上放环
您有 10 根杆,编号从 0 到 9。有三种类型的环 - 红色,绿色和蓝色 - 被放在杆上。每个杆上都有一个每种颜色的环,你得到一个点,也就是说,要得到一个点,你需要在一根杆上有一个红色环,绿环和蓝色环。
戴在杆上的戒指由两个字符表示 - 第一个字符描述戒指的颜色,第二个字符描述它从0到9在哪个数字杆上。例如,“R8”表示在第8根杆上放置了一个红色环。
编写函数:
类解决方案 { 公共 int 解决方案(字符串 S); }
给定一个正确的长度为2N的字符串,描述放在杆上的N个环,返回您将获得的点数。
示例:
对于“”B2R5G2R2“,”“”,答案是1
给定的S =“R8R0B5G1B8G8”,你的答案应该是1。放在第8根杆上的环有一分(上面有一个红色,一个蓝色和一个绿色环)。第0根杆上还有一个红色环,第1根杆上有绿色,第5根杆上有蓝色。你不会为他们得分,因为他们没有在一根杆上形成一个完整的三人组。任何其他杆上都没有环。
14. 连接字符串以获得回文
如果字符串的向后读取与向前读取相同,则它是回文。例如,“madam”和“racecar”是回文,但“milk”不是。
我们得到了一个N个字符串数组,其中每个字符串由两个小写的英文字母组成。我们希望将尽可能多的字符串连接在一起,以获得回文。
编写函数:
类解决方案 { 公共 int 解决方案(String[] A); }
其中,给定一个长度为N的数组A包含两个字母字符串,返回可以通过从A将尽可能多的字符串连接在一起来创建的最长回文的长度.
示例:
给定A = [“ck”,“kc”,“ho”,“kc”],该函数应返回4,因为可以从A创建的最长回文是“ckkc”和“kcck”, 并且它们的长度都等于 4。
给定 A = [“ab”, “hu”, “ba”, “nn”],该函数应返回 6,因为可以从 A 创建的最长回文是 “abnnba” 和 “bannab”,并且它们的长度都等于 6。
给定 A = [“so”, “oo”, “kk”, “od”],该函数应返回 2,因为可以从 A 创建的唯一回文是 “oo” 和 “kk”,并且它们的长度都等于 2。
给定 A = [“do”, “go”, “ok”],该函数应返回 0,因为无法从 A 创建回文。
为以下假设编写有效的算法:
N 是 [1, 100,000] 范围内的整数。
A 中的每个字符串由两个英文小写字母组成。
15. 路由器之间的大写消息
让我们定义一种名为“广播和关闭”的消息。当路由器收到此消息时,它会将相同的
消息广播到其无线范围内的所有其他路由器。然后,该路由器将关闭,并且无法再发送或
接收消息。
例如,路由器 A 位于 (0, 0);路由器 B 位于 (0, 8);路由器 C 位于 (0, 17);路由器 D 位于 (11, 0)。
如果
无线范围为10,当路由器A发送消息时,它可以首先到达B;来自路由器 B 的消息将进一步到达
路由器 C。但路由器 D 永远不会收到此消息。
A 0 0
B 0 8
C 0 17
D 11 0
问:给定路由器位置列表(它们的名称和相应的2D坐标),告诉我来自
路由器A的消息是否可以到达路由器B。用适当的输入和输出参数编写方法/函数。
16. 将矩阵转换为所有零
给一个matrix,只包括0和1,可以不断的翻转行或者列,请问是否能让这个matrix全是0?翻转某行或者某列的意思是,此行或者此列的1会变成0,0会变成1.
初始状态:
0 0 1 0 0 --> 1 1 0 1 1
0 0 0 1 0 0
0 0 1 0 0
1 1 0 0 1 0
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0