133 条回复  ·  15282 次点击
SeaTac 初学 2025-2-21 10:40:52
@iintothewind 我觉得北美面试 system design 才是真正的八股文 再叠加现在的 bar
qiuhang 小成 2025-2-21 10:42:14
这个没啥难度吧,都不需要刷题,正经写了 3 年代码的应该都能写出来吧?顶多是实现不够优雅或者考虑不够完善?
barathrum 初学 2025-2-21 10:43:53
几年前的我会一堆数据结构和算法. 但是工作几年后因为日常工作一是用的太少了, 几乎不用自己写, 二是库提供的比我自己写的健壮且高效确实也没必要自己写, 现在我已经写不出来了.
eedwinhei 小成 2025-2-21 10:52:28
这稍微思考一下也不难吧?还需要背诵嘛?业务代码不比这复杂多了。。
watzds 小成 2025-2-21 10:53:11
很难,这种题目,我一上来就会想怎么做到高性能,怎么无锁实现,和已有产品比有什么优势 工作过的人考虑的多
lazydao 初学 2025-2-21 10:58:56
如果是工作中会用到的,该问就得问;如果不是,那真没必要。
yuanyao 楼主 初学 2025-2-21 11:03:04
@SeaTac 如果候选人没思路会一点点给提示
inhzus 小成 2025-2-21 11:06:45
@xz410236056 #46 大家都知道这玩意儿就是八股文嘛,和其它 leetcode 题目常见 100 题是并列的位置。工作中没人会用,但面试如果好好准备肯定会覆盖到。只能鉴定为楼主面试的候选人都没好好准备
Akiya 小成 2025-2-21 11:07:58
@lazydao 现在写 curd 的可以说是个人都会,但是你不整点门槛怎么选人
ldyisbest 限制会员 2025-2-21 11:08:37
这样会算过吗?我觉得不会算过 import java.util.LinkedHashMap; import java.util.Map; public class LRUCache { private final int capacity; private final Map cache; public LRUCache(int capacity) { this.capacity = capacity; // 使用 LinkedHashMap 并设置访问顺序为 true ,以便按访问顺序存储 this.cache = new LinkedHashMap<>(capacity, 0.75f, true) { @Override protected boolean removeEldestEntry(Map.Entry eldest) { return size() > LRUCache.this.capacity; } }; } // 获取缓存中的数据 public V get(K key) { return cache.getOrDefault(key, null); } // 向缓存中添加数据 public void put(K key, V value) { cache.put(key, value); } public void printCache() { System.out.println(cache); } public static void main(String[] args) { LRUCache lruCache = new LRUCache<>(3); lruCache.put(1, "A"); lruCache.put(2, "B"); lruCache.put(3, "C"); lruCache.printCache(); // {1=A, 2=B, 3=C} System.out.println("Get 1: " + lruCache.get(1)); // A lruCache.printCache(); // {2=B, 3=C, 1=A} lruCache.put(4, "D"); lruCache.printCache(); // {3=C, 1=A, 4=D} } }
返回顶部