Matching markets occur in many real-world scenarios: sponsored search auctions, hospital-resident matching, kidney matching, etc. In many instances such as sponsored search auctions, market making is facilitated by assessing prices for goods. We will consider the simplest setting of a two-sided matching market with sellers selling at most one copy of a good and buyers interested in at most one good, which has connections to cross-bar switches. We will present a descending price algorithm based auction mechanism to determine market clearing prices so that efficiency obtains. For general valuations with an intelligent choice of reverse constricted sets, we prove that the algorithm converges in a finite number of rounds, and with polynomial-time complexity obtains the maximum price vector.