本文共 305 字,大约阅读时间需要 1 分钟。
【题目】
【分析】 题意倒是很容易懂。关键是要求时间复杂度为o(n),那就不能用排序来做了。这就比较麻烦。
我们的方法其实也挺简单的,就是借助HashSet<Integer>保存下来。 然后遍历节点,每当遍历到一个新节点的时候,就把跟它连着的所有节点都到HashSet中查一遍。
【代码】
我在最后加了一个优化,当剩下的元素的数量比res小的时候,就没有必要看了。
【结果】
虽然只有87.83%,但是看了结果之后,发现小于10ms的方法无一例外都是用先排序再统计的方法做的。而使用我的方法的最好的成绩是11ms,所以我的应该是最优的方法。 题目中已经明确说使用o(n)的方法来做了,不知道那些人在想什么。。。
|
转载地址:http://dslwn.baihongyu.com/