-
MySQL 中 GROUP BY 子句应该出现在 WHERE 子句之后,ORDER BY 子句之前
SELECT col, COUNT(*) AS num FROM mytable WHERE col > 2 GROUP BY col # WHRER 之后,ORDER BY 之前 HAVING num >= 2; ORDER BY num
-
连接:内连接(细分有自连接和自然连接)和外连接
- 自连接可以看成内连接的一种,只是连接的表是自身而已。【需要提供连接的列】
- 自然连接是把同名列通过等值测试连接起来的,同名列可以有多个。【自动连接所有同名的列】
-
清空表的内容可以使用
truncate TABLE mytable
-
KMP 算法中 next 数组
-
Peterson 算法主要用于多进程或多线程间同步互斥,被用于解决临界区问题。缺点是:① 基于硬件的原子性;② 存在忙等待:需要在临界区的进程间轮流竞争,如果一个进程正在临界区内,那么另一个进程必须忙等待
【题目内容】小美在玩一项游戏。该游戏的目标是尽可能抓获敌人。敌人的位置将被一个二维坐标 (x,y)所描述。小美有一个全屏技能,该技能能一次性将若干敌人一次性捕获。捕获的敌人之间的横坐标的最大差值不能大于 A,纵坐标的最大差值不能大于 B 现在给出所有敌人的坐标,你的任务是计算小美一次性最多能使用技能捕获多少敌人
【输入描述】第一行三个整数 N,A,B,表示共有 N个敌人,小美的全屏技能的参数 A 和参数 B。 接下来 N 行,每行两个数字 x,y,描述一个敌人所在的坐标(1 <= N <= 500, 1 <= A, B <= 1000, 1 <= x, y <= 1000)
【输出描述】一行,一个整数表示小美使用技能单次所可以捕获的最多数量
# 输入:
5 1 2
1 1
2 2
3 3
1 3
1 4
# 输出:
3
思路: 考虑到数据量比较小,可以直接暴力枚举,枚举的过程中维护当前区域的 minX, maxX, minY, maxY
具体代码参考:meituan_0318_1.cpp [AK 91%]
2023.03.27—19:00—1h,主要是负责 C 端广告业务
HLS 和 DASH 是基于切片的,相比于基于流式的 RTMP 和 RTSP 时延要大
- 「线性探测」 使用hash函数计算出的位置如果已经有元素占用了,则向后依次寻找,找到表尾则回到表头,直到找到一个空位
- 「开链」 每个表格维护一个list,如果hash函数计算出的格子相同,则按顺序存在这个list中
- 「再散列」 发生冲突时使用另一种hash函数再计算一个地址,直到不冲突
9、数据的索引有哪些 小林coding
状态码 | 类别 | 含义 |
---|---|---|
1XX | Informational(信息性状态码) | 接收的请求正在处理 |
2XX | Success(成功状态码) | 请求正常处理完毕 |
3XX | Redirection(重定向状态码) | 需要进行附加操作以完成请求 |
4XX | Client Error(客户端错误状态码) | 服务器无法处理请求 |
5XX | Server Error(服务器错误状态码) | 服务器处理请求出错 |
11、[算法] 剑指 Offer II 026. 重排链表
TCP 三次握手需要 1.5 RTT,TLS 握手需要 1.5 RTT,一般 HTTPS 就需要 3个 RTT 完成握手,QUIC 基于 UDP 首先通过 Inchoate Client HeLlO 以及 REJ 报文建立连接,这需要 1个 RTT,此时客户端会缓存服务端的一些信息(REJ 报文),然后客户端能够在不增加额外RTT的情况下建立一个加密的连接,要发送的数据可以在握手的包中捎带着发送过去,而不用等待服务器的回复,从而实现0RTT。
所谓QUIC的0RTT是指在建立连接之后,后续发送数据都不需要增加额外的RTT时间,最开始的握手还是需要1RTT的时间消耗的
参考:https://blog.csdn.net/qq_35448165/article/details/106840038
2、std::move 底层原理,转换成右值引用之后会发生什么 🔥 move
6、[算法] 剑指 Offer 10- I. 斐波那契数列
7、[算法] 543. 二叉树的直径
2023.09.14—17:00-18:00 数据开发岗
- python 中 pass 关键字、查看变量类型、string 和 unicode 区别
- 重载和重写的区别,多态如何实现
- 线程和进程区别
- 实习项目按照 STAR 法则叙述一下,难点是啥
- 第一范式、第二范式、第三范式,范式越高越好吗
- 两道 sql 题目:city 表选 id 重复出现的数据项,student 表总分按逆序排列
- 反问:数据开发具体做啥,使用啥语言(pyhton, sql,难怪一开始问我 python)
首先美团的志愿安排有点迷,第二志愿没走直接到第三志愿,而且软件开发岗中还有数据开发,岗位不太匹配直接拒了
2023.09.15—19:00-20:00 信息安全部门
-
DASH 协议介绍一下,和 HLS 的区别?
- DASH 基于 mpd 文件索引 m4s 文件,HLS 基于 m3u8 文件索引 TS 文件
- DASH 的码率是分片级别的,HLS 的码率是索引文件级别的
- DASH 使用带宽估计算法确定可用的宽带,HLS 基于时间的算法检测网络带宽
- DASH 根据网络状况和设备性能不断切换码率,HLS 每隔几秒选择一个新码率版本播放
-
muduo 库使用 Reactor 模型是什么,和 Proactor 区别是啥
Reactor 模型主要组件:Event 时间、Reactor 反应堆、Demultiplex 时间分发器、EventHandler 时间处理器
Reactor
和Proactor
模式的主要区别就是 真正的读取和写入操作是由谁来完成的。Reactor
来了事件操作系统通知应用进程,让应用进程来处理。主线程(I/O 处理单元)之复杂监听 fd 是否有事件发生,有就通知工作线程(逻辑单元),除此之外主线程不做其他工作Proactor
来了事件操作系统来处理,处理完再通知应用进程。将所有 I/O 操作都交给主线程和内核来处理(读写),工作线程仅仅负责业务逻辑(解析 HTTP 请求,在封装成响应数据发回去)
-
为何要基于红黑树实现定时器
-
CS144 项目中为何要使用指数退避,存在粘包问题吗(在开发过程应该不存在
退避方法很多,比如有每次等待 100ms 重传一次、等待指数退避时间
主要的一个原因就是不要给对端造成过多的压力
-
TCP 三次握手和四次挥手过程
-
进程调度策略
准确来说分为批处理系统和交互式系统
- 批处理系统:FCFS、SJF、最短剩余时间优先
- 交互式系统:时间片轮转、优先级调度、多级反馈队列
-
给定 4G 内存,40亿个不重复的 unsigned int 中如何查找指定整数
直接枚举、bitmap 位图统计
-
了解或者使用过消息队列吗
-
算法:简单的层序遍历
2024.03.23 19:00-20:00 到店民宿业务
-
C++和Java有过加强学习吗,聊研究生经历
-
Java 注解
-
终端和异常区别
-
SQL 分页查询如何实现,offset 很大时如何优化
- 使用基于主键的分页:基于主键的分页是一种更有效的分页策略。在查询条件中使用主键范围限制,而不是使用
OFFSET
。例如,使用WHERE id > last_id LIMIT 10
来获取下一页的数据。这种方式避免了跳过大量记录,提高了查询性能。 - 使用游标:一些数据库引擎支持游标(如MySQL的游标),可以通过游标来实现分页查询。游标可以在数据库服务器端处理分页逻辑,减少了客户端和服务器之间的通信开销,提高了查询性能。
- 使用基于主键的分页:基于主键的分页是一种更有效的分页策略。在查询条件中使用主键范围限制,而不是使用
-
场景题:美团用户点外卖场景 ,如何快速筛选距离比较近的商家,不要求很精确(ES,倒排索引
-
算法题:反转链表II