Bottom-up parsing builds parse trees starting from the leaves (terminals) and working towards the root (start symbol). It can handle a more general class of grammars than top-down parsing. Shift-reduce parsing splits the input string into two parts separated by a special character, with terminals on the right. It uses two actions: shift moves a terminal from right to left, and reduce applies a production to remove symbols from the left. Conflicts can occur when it is possible to shift or reduce, or to reduce in different ways. Handles mark points where reduction also allows deriving the start symbol.