Salesforce interview question

What is the difference between a shadow DOM and a virtual DOM?