Dinicův algoritmus (1970) je algoritmus vyvinutý Jefim Dinicem pro výpočet maximálního toku v síti. Hlavní myšlenka algoritmu spočívá v iterativním výpočtu tzv. "blokujících" toků, které se postupně nasčítají až na tok maximální. Tento přístup dovoluje v průměrném případě počítat maximální tok rychleji než Ford–Fulkersonovým algoritmem, který pro výpočet využívá hledání zlepšujících cest.