快手秋招

一面
1.第一段实习
2.线程池参数怎么配置的当时,线程数是不是设的越多越好
3.大key有什么问题,分片的话怎么知道有多少片,怎么保证这些都写入成功了
4.第二段实习
5.审批流中,如果有多个人同时对一个审批做改动,怎么处理
6.怎么防止消息被重复消费,消费完就把redis key删除的话,
如果删除之后又有消费者拿到这条消息了怎么办
7.项目
8.了解一些限流算法吗
9.布隆过滤器误差率怎么去设置,如果我想降低他的误差率有哪些办法
10.给了一个代码,在methodA中调用了this.methodB,问methodB头上的注解能有作用吗
11.类似一个生产者消费者的代码,有一个厨师会生产食物,当他生产满10个以后就会休息
10s,有两个食客,每1s吃一个食物,模拟一下这个代码(不用wait notify)
12.三叉树的广度优先遍历
当天约二面

二面
1.实习内容
2.怎么想到的用CountDownLatch
3.除了用到的String redis还有哪些数据结构
4.redis有哪些集群模式
5.使用redis中有没有遇到过哪些问题
6.Java中有哪些锁,是怎么实现的
7.CAS有哪些问题(我说了ABA,最后应该是想让我往AQS中state用volatile去答)
8.线程池的原理
9.Mysql深度分页具体怎么去解决,用游标具体怎么去做
10.写sql 有一张emoloyee表,查询薪资第二大的员工,如果没有第二大薪资返回null
11.算法:删除链表中倒数第n个数
二面其实答得一般,当时都感觉挂了,也放我过了,隔天约HR面

感觉快手今年池子有点深,许愿HR面能过能从池子泡出来
全部评论
佬base哪里的
点赞 回复 分享
发布于 2024-09-22 00:05 新加坡
加油
点赞 回复 分享
发布于 2024-09-18 01:17 四川
佬,快手技术面只有两轮技术面吗
点赞 回复 分享
发布于 2024-09-16 14:38 辽宁

相关推荐

第一题:n为奇数输出n个1,n为偶数输出n-1个0即可:#include <iostream>using namespace std;int main() {int t;cin >> t;while (t --) {int n;cin >> n;if (n & 1) {for (int i = 0; i < n; i ++) {cout << 1 << " ";}cout << '\n';} else {for (int i = 0; i < n - 1; i ++) {cout << 1 << " ";}cout << 0 << '\n';}}}第二题:如果你有n个长度相同的木棍,那么他们组成正m边形的组合是C(n,m)个,C是组合数,计下数就可以了。#include <bits/stdc++.h>using namespace std;#define int long longconst int p = 998244353;const int N = 5e3 + 10;int h[N], rh[N];int C(int n, int m) {if (n < m) return 0;return h[n] * rh[m] % p * rh[n - m] % p;}int qs(int a, int b) {int res = 1;while (b) {if (b & 1) res = res * a % p;a = a * a % p;b >>= 1;}return res;}signed main() {h[0] = rh[0] = 1;for (int i = 1; i < N ; i ++) {h[i] = h[i - 1] * i % p;rh[i] = qs(h[i], p - 2);}int n;cin >> n;map<int, int> mp;for (int i = 0; i < n; i ++) {int x;cin >> x;mp[x] ++;}for (int i = 3; i <= n; i ++) {int res = 0;for (auto& it : mp) {res = (res + C(it.second, i)) % p;}cout << res << ' ';}}3,最小生成树模板题,注意处理一下正边#include <cmath># include <iostream>#include <queue>using namespace std;const int N = 1e5 + 10;int p[N];int find(int x) {if (x != p[x]) p[x] = find(p[x]);return p[x];}int main() {int n, m;cin >> n >> m;priority_queue<pair<int, pair<int, int>>> pq;for (int i = 1; i <= n; i ++) p[i] = i;for (int i = 1 ; i <= m; i ++) {int u, v, x;cin >> u >> v >> x;pq.push({x, {u, v}});}long long res = 0;while (pq.size() > 0) {auto t = pq.top();pq.pop();int u = t.second.first;int v = t.second.second;int x = t.first;if (x >= 0) {res += x;p[find(u)] = find(v);} else if (find(u) != find(v)) {res += x;p[find(u)] = find(v);}}cout << res << '\n';
投递饿了么等公司10个岗位
点赞 评论 收藏
分享
评论
10
65
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务