add searching algorithms