We consider the parameterized version of the maximum internal spanning tree
problem, which, given an n-vertex graph and a parameter k, asks for a
spanning tree with at least k internal vertices. Fomin et al. [J. Comput.
System Sci., 79:1-6] crafted a very ingenious reduction rule, and showed that a
simple application of this rule is sufficient to yield a 3k-vertex kernel.
Here we propose a novel way to use the same reduction rule, resulting in an
improved 2k-vertex kernel. Our algorithm applies first a greedy procedure
consisting of a sequence of local exchange operations, which ends with a
local-optimal spanning tree, and then uses this special tree to find a
reducible structure. As a corollary of our kernel, we obtain a deterministic
algorithm for the problem running in time 4k⋅nO(1)