Learning, Matching, and Allocation Algorithms for Healthcare and Revenue Management Problems with Reusable Resources