Faits : A. A._, ressortissant albanais né le 17 mai 1954, sans domicile fixe, a été interpellé le 5 avril 2015 à Genève avec deux compatriotes soupçonnés d'avoir cambriolé peu auparavant un appartement au Grand-Lancy en escaladant la façade de l'immeuble. Il était alors en possession d'un appareil photo dérobé dans les jours précédents au Petit-Lancy, d'un bijou serti volé quelques jours plus tôt à Confignon et d'une bague volée fin mars à Onex. Des objets provenant d'autres cambriolages ont été retrouvés dans une villa qu'il squattait au Petit-Lancy avec d'autres compatriotes. A._ a été placé le 8 avril 2015 en détention provisoire comme prévenu de séjour illégal, vol, tentative de vol, dommages à la propriété, violation de domicile et, subsidiairement, recel. Par ordonnance du 3 novembre 2015, le Tribunal des mesures de contrainte de la République et canton de Genève a refusé d'ordonner la mise en liberté de A._ en raison des dangers de fuite, de collusion et de réitération. La Chambre pénale de recours de la Cour de justice de la République et canton de Genève a rejeté le recours formé par A._ contre cette décision au terme d'un arrêt rendu le 20 novembre 2015. B. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral d'annuler cet arrêt et d'ordonner sa mise en liberté immédiate, voire de renvoyer la cause à la cour cantonale pour nouvelle décision. Il requiert l'assistance judiciaire. Le Ministère public de la République et canton de Genève conclut au rejet du recours. La Chambre pénale de recours se réfère aux termes de sa décision. Le recourant a répliqué.