今天被问到两个面试题
1.一个 slice 有 10000 个元素,要删除前面 9999 个,求最佳方案
我答的是取第 10000 个元素的值,新建一个 slice 赋值,之前的 slice 没有引用会被 gc 回收
面试官说这个方案是最差的,因为这样做之前的 slice 依然被引用不会回收,反而增加大量引用效率变差。
这里没理解是为什么,有大佬能讲解一下吗?
2.两个千万级长度的字符串,要比较其中的重复文本出现频率,即相似度,给出解决方案
这题只能想到暴力遍历,没答上来,求大佬给个解决方案
1.一个 slice 有 10000 个元素,要删除前面 9999 个,求最佳方案
我答的是取第 10000 个元素的值,新建一个 slice 赋值,之前的 slice 没有引用会被 gc 回收
面试官说这个方案是最差的,因为这样做之前的 slice 依然被引用不会回收,反而增加大量引用效率变差。
这里没理解是为什么,有大佬能讲解一下吗?
2.两个千万级长度的字符串,要比较其中的重复文本出现频率,即相似度,给出解决方案
这题只能想到暴力遍历,没答上来,求大佬给个解决方案
