  Matching plays a vital role in the rational allocation of resources in many
areas, ranging from market operation to people's daily lives. In economics, the
term matching theory is coined for pairing two agents in a specific market to
reach a stable or optimal state. In computer science, all branches of matching
problems have emerged, such as the question-answer matching in information
retrieval, user-item matching in a recommender system, and entity-relation
matching in the knowledge graph. A preference list is the core element during a
matching process, which can either be obtained directly from the agents or
generated indirectly by prediction. Based on the preference list access,
matching problems are divided into two categories, i.e., explicit matching and
implicit matching. In this paper, we first introduce the matching theory's
basic models and algorithms in explicit matching. The existing methods for
coping with various matching problems in implicit matching are reviewed, such
as retrieval matching, user-item matching, entity-relation matching, and image
matching. Furthermore, we look into representative applications in these areas,
including marriage and labor markets in explicit matching and several
similarity-based matching problems in implicit matching. Finally, this survey
paper concludes with a discussion of open issues and promising future
directions in the field of matching.
