A public cloud comes in a couple of different flavors but is most often used to refer to the hyper-scale clouds such as offered by Amazon Web Services (AWS) and Microsoft Azure. They are considered public because 1) both clouds are generally open for use by anyone willing to pay, and 2) the physical network, storage, and compute resources underpinning their cloud services is shared between customers. Any isolation of your workloads/data is done at the virtual layer. Aside from these global scale public clouds, may service providers also offer public cloud services but with much more modest infrastructures and are focused on application specific or regional customer bases.
Private clouds are typically small in scale and intended to serve a specific organization or department within an organization. Unlike a public cloud, a private cloud’s underlying physical storage, compute, and to a degree, network resources are not shared but dedicated to a customer. A private cloud can be hosted on-premise however many are hosted with service providers in regional data centers.
A hybrid cloud normally refers to a configuration where a customer has a private cloud but also has the option of using public cloud resources to run some workloads using a common management interface. Sometimes, a hybrid cloud also refers to the hosting of workloads across multiple public clouds.