拼多多集团-PDD

收藏
电商
1000-9999人
上市
上海
福利丰厚榜学历友好榜高校必争榜offer比较常胜榜HC充足榜校招高薪榜牛客指数榜
查看官网
上传简历
职位类型
全部
后端开发
前端开发
客户端开发
产品
运营
更多
最新
热门
得物、拼多多经常考,倒计时组件1.倒计时组件2.如何实现精确计时(setInterval 1s先就update以前知道写但没考虑到为什么,时间戳同步)// Countdown.jsximport React, { useEffect, useState, useRef } from 'react';/*** props:*  - endAt: number (timestamp ms) 或 Date*  - onFinish?: () => void*  - tickMs?: number (minimal tick granularity, default 1000)*/export default function Countdown({ endAt, onFinish, tickMs = 1000 }) {const endTs = typeof endAt === 'number' ? endAt : endAt.getTime();const [remaining, setRemaining] = useState(Math.max(0, endTs - Date.now()));const mounted = useRef(true);useEffect(() => {mounted.current = true;// initial syncfunction update() {const now = Date.now();const rem = Math.max(0, endTs - now);if (!mounted.current) return;setRemaining(rem);if (rem === 0) {onFinish?.();return;}// Align next update to wall-clock second boundary (or tickMs)const delay = Math.min(tickMs,1000 - (now % 1000) // align to next second for nicer UX);// If <1s left, use requestAnimationFrame for smoothnessif (rem <= 1000) {requestAnimationFrame(update);} else {setTimeout(update, delay);}}update();return () => {mounted.current = false;};}, [endTs, onFinish, tickMs]);const sec = Math.ceil(remaining / 1000);const mm = Math.floor(sec / 60);const ss = sec % 60;return (<div>{mm}:{String(ss).padStart(2, '0')}</div>);}
查看2道真题和解析
点赞 评论 收藏
分享
2025-12-24 20:46
武汉大学 Java
点赞 评论 收藏
分享
2025-12-24 15:50
门头沟学院 Java
1. 项目经历拷打2. HashMap 扩容时链表转红黑树的阈值为什么是 8?退化为 6 又是为什么?3. synchronized 锁升级过程详解 — 从无锁到重量级锁一步步拆解4. G1 垃圾回收器如何预测停顿时间?Region 大小该怎么设置?5. volatile 能保证数组元素的可见性吗?不能的话该怎么解决?6. ThreadLocal 内存泄漏的根本原因是什么?JDK 做了哪些改进?7. Java 8 Stream 并行处理原理 + ForkJoinPool 工作窃取机制浅析8. AQS 中为什么使用 CLH 队列而不是普通链表?9. 线程池核心参数设置规则 + 美团动态调整方案分享10. ConcurrentHashMap 的 size() 为什么不精确?有没有替代方案?11. 如何用 CAS 实现一个无锁栈?ABA 问题如何规避?12. CompletableFuture 如何实现多个异步任务依赖执行?13. MySQL 索引失效的 10 种场景 + 最左前缀原则底层原理14. 十亿级订单表如何优化分页查询?实战思路分享15. Redis 大 Key 删除导致集群崩溃,如何避免?16. Redis 事务 vs MySQL 事务 — ACID 区别到底在哪?17. 缓存与数据库一致性方案对比 + 拼多多秒杀实战选用策略18. Redis Cluster 的 slot 迁移过程会阻塞请求吗?
查看17道真题和解析
点赞 评论 收藏
分享
2025-12-22 12:15
门头沟学院 Java
1、实习介绍,看机会原因,项目。2、redis常用的数据结构,项目中用过哪几种,业务中使用的场景3、redis的hash怎么实现的,rehash过程讲一下 和JavaHashMap的rehash有什么区别?redis cluster怎么做到高可用的?4、redis集群和哨兵机制有什么区别?redis的持久化机制了解吗?遇到过redis的hotkey吗?怎么处理的?5、redis是单线程的吗?单线程为什么还这么快?讲一讲redis的内存模型?6、简单说一下RabbitMQ的工作原理?如何保证消息的顺序执行?7、卡夫卡了解吗?和RabbitMQ有什么区别?8、tcp/udp简单说下两者的区别?tcp为什么要三次握手和四次挥手?两次握手可以不?会有什么问题?tcp怎么保证有序传输的9、讲下tcp的快速重传和拥塞机制,知不知道time_wait状态,这个状态出现在什么地方,有什么用?10、http与https区别?https是怎么做到安全的?11、有没有了解过协程?说下协程和线程的区别?用过哪些linux命令?如查看内存使用、网络情况?12、你了解哪些设计模式啊。挑一个熟悉的讲讲?(除了单例模式)在项目中有用过设计模式吗?讲讲你怎么用的?简单说一下适配器模式和装饰器模式?13、索引的常见实现方式有哪些,有哪些区别?14、MySQL的存储引擎有哪些,有哪些区别?InnoDB使用的是什么方式实现索引,怎么实现的?说下聚簇索引和非聚簇索引的区别?15、raft算法的基本流程?raft算法里面如果出现脑裂怎么处理?16、paxos和zookeeper的zab算法,他们之前有啥区别?17、如果我是想一个人的姓名一样就认为他们equal,能现场写下我们怎么重写equals吗?如果两个对象,一个是cat,一个是dog,我们认为他们的name属性一样就一样,怎么重写equals18、还有点时间,写个题吧leetcode406.根据身高重建队列假设有打乱顺序的一群人站成一个队列。每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。注意:总人数少于1100人。示例输入:[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]输出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]
点赞 评论 收藏
分享
2025-12-21 16:15
门头沟学院 Java
1.实习介绍2.jvm垃圾回收有了解吧,我有这样一个场景:比如说你负责的服务,那个可能是一个大流量,低延迟的一个服务。然后现在你观察到你们现在这个服务频繁的GC然后针对你这种我刚刚讲这种特点服务其实是有可能影响它的稳定性跟性能的了。如果不是一个QPS很高,然后访问时间也可以容忍很长的一个服务,那倒无所谓,对吧,然后这个情况可能需要你来排查和解决。你会怎么来做3.我再说具体点,就是它的YGC和OldGC都非常频繁,你觉得会是什么情况4.刚刚提到主要一个说那个一样ygC可能晋升到老年代的门槛低了,这种情况,你怎么调呢?5.要是竞争年龄没什么问题的。有没有可能把那个Young区调大?你觉得行不行6.好,那如果Young区调大的话,因为总的内存肯定是有限的固定的嘛,那这个老年代Old区可能就小了。这样这这种调整会是一个正向的吗?对GC的优化来讲,这种做法一定是对的么?为什么7.问一下MySQL相关的问题哈,我用数据库存100万数据,怎么对这一百万笔数据进行修改并确保全部修改成功8.mysql的一张表里面有a b c 3个字段。建了三个单独索引。sql语句的是where a等于1,b等于 1,c等于1,我这个sql会使用哪些索引?9.它底层优化器怎么去选择。根据哪些因素去选择10.问一个场景的问题,现在前置条件是innodb引擎我数据库里呢有两张表。一张表有30个字段,另外一张表有60个字段。假设这两张表每个字段的长度都是varchar80不考虑null的这种情况。我现在往两张表里分别插入100万条数据,接下来我需要从两张表里各自select一条数据出来。当然,我这个字段数都保持在30个where条件左右,我直接使用主键,这两个查询在效率上有没有什么差别,为什么11.OK,很不错,接下来问一下业务场景的问题哈,比如我现在线上有这样一个批量处理类的任务。这种程序的特点是短时间内我会产生大量的临时对象,因为批处理会比较快,内部的处理。理论上这些临时对象是可以被垃圾回收回收掉的,但是系统在高速运行了一段时间以后,发生了堆内存的溢出。你分析一下,我现在不考虑一些这个对象无法被回收或者什么长引用这些因素,反正主要还是基于刚才那个前置的这个条件场景。那你来分析一下,就我也没有什么不可回收的为什么运行了一段时间,会出现堆内存溢出可能的原因是什么
点赞 评论 收藏
分享
分享我的面试经验
模拟面试
真实面试体验,快速补齐短板
应聘感受
暂无应聘感受
牛客网
牛客网在线编程
牛客网题解
牛客企业服务