When a wallet is created, there is a pubic key and private key. But there is also a character string or phrase, right?
AFAIK, all the wallets will create a public key and private key but there are only a few that make a string called seed, that you can use to recover the whole wallet.
you can read about how seed works in Electrum (a wallet that is using seed to generate and restore the wallet) documents:
http://docs.electrum.org/en/latest/faq.html#what-is-the-seedIf you have any 2 of the 3 you can access the account, correct?
the bitcoin in an address can be accessed (spent) having the private key of that address.
and as i said that string (Seed) can be used to recover the wallet and all the private keys in it.
What I'm trying to figure out is can it be possible for someone else to generate the same public key with a different private key?
no, each private key will create a unique bitcoin address
And how likely is it for the bitcoin address generators to come up with the same address a second time for a different person?
short answer is no.
there is a math that you might find if you search that proves the chance of it happening is super small. in other words you have better chance of getting hit by a meteor than creating a duplicate bitcoin address