The last group of striking hotel workers in San Francisco has reached a tentative agreement for a new contract with Hilton, bringing an end to a strike that has lasted three months.