Caching popular content in the Internet has been recognized as one of the effective solution to alleviate network congestion and accelerate user information access. Sharing and coordinating in cache data placement provide an opportunity to improve system performance. This paper studies cache placement strategies and their performance in hierarchical network environments. A theoretical model is introduced to analyze the access cost of placing a set of object copies in the cache hierarchy, under which the object placement problem is formulated as an optimization problem. The problem is proved to be divided into subproblems, and a dynamic programming algorithm is proposed to obtain the optimal solution. Performance of different caching strategies is evaluated using simulations. It is shown that the proposed algorithm outperforms other cache placement strategies in hierarchical caching systems.