Algorithms for finding special substructures in combinatorial objects