10单选
- C语言内存相关(我Java后端考C?)
- ARP -> 由IP得到物理地址
- Https的加密算法 -> SSL
- 不死锁的最低设备数
- 给个图,可能的dfs序列
- 已知a[0][0]地址和a[2][2]地址,问a[3][3]地址
- 8个球,一个重,称几次找出(3^2 > 8, 2次)
- 其他忘了。。。
5多选
- 同一进程中,多线程不共享的
- 替换算法中的 堆栈型替换算法
- B+树
- 其他忘了。。。
第一题 解析XML
输入
"<people><name>shopee</name></people>", "people.name"
输出
“shopee”
只拿了80%, 应该是没考虑到 "<people><people></people></people>" 的情况 :(
第二题 找平衡点
平衡数左边和 == 平衡数右边和
输入
[1, 2, 3, 4, 6]
输出
3
public int findBalancedIndex(int[] inputArray) { // write code here int sum = 0; for (int i : inputArray) { sum += i; } int sum2 = 0; for (int i = 0; i < inputArray.length; i++) { if (sum2 * 2 + inputArray[i] == sum) { return i; } sum2 += inputArray[i]; } return -1; }暴力ac
第三题 分拆整数
将 n 分成 k 份, 有几种分法。
输入
n = 7, k = 3
输出
4
private int count = 0; public int divide(int n, int k) { // write code here dfs(n, k - 1, n, 1); return count; } private void dfs(int n, int k, int sum, int start) { if (k == 0) { count++; return; } for (int i = start; i <= n / 2; i++) { if (sum >= 2 * i) { dfs(n, k - 1, sum - i, i); } } }
dfs即可 ac
全部评论
(3) 回帖