How a thin node in network verify the validity of the blockchain tree? I think the node must wait for a time period to get the same valid block from some of its peers.
Most thin clients only download, check and keep the block headers. They do not download the transactions of blocks, so they cannot fully verify blocks.
To learn about transactions they request information from full nodes which will send them a Merkle block for each transaction of interest. With the transaction and the Merkle block, the thin client can verify that the transaction was indeed part of the block. When this transaction gets additional confirmations (i.e. more blocks get found building on the block this transaction was included in), the thin client assumes that the network accepted the block and that the block is valid.
There are also some thin clients that outsource verification to remote services such as mobile wallets of online wallet services.