Top-p, or nucleus sampling, keeps the most likely tokens until their cumulative probability reaches a threshold, then samples from that set. It solves the problem that a fixed top-k includes nonsense when the distribution is peaked and excludes reasonable options when it is flat. It exists because the set of plausible continuations should be sized by the model's own confidence.
Beam search expands several partial sequences at once and keeps the highest-scoring ones, rather than committing to the token chosen at each step. It solves the problem that greedy decoding can be locally optimal and globally poor. It exists as the default for translation and summarisation, and it tends to produce bland text for open-ended generation.