An Efficient Approach for Constructing Dynamic Multicast Trees