<prompt> Andika kipengele cha kukokotoa ambacho kinageuza mfuatano. Mfuatano wa ingizo umetolewa kama safu ya vibambo s.Ni lazima ufanye hivi kwa kurekebisha safu ya ingizo in-place na kumbukumbu ya ziada O1.Mfano wa 1:Ingizo: s h,e,l,l,oPato: o,l,l,e,hMfano wa 2:Ingizo: s H,a,n,n,a,hPato: h,a,n,n,a,HVikwazo: 1 s.urefu 105 si ni herufi ya ascii inayoweza kuchapishwa  <response>: chatudef reverseStrings: Liststr - Hakuna: kushoto, kulia 0, lenzi - 1 wakati kushoto kulia: skushoto, skulia skulia, skushoto kushoto, kulia kushoto 1, kulia - 1maelezoAlgorithm inafuata njia ya viashiria viwili. Anzisha viashiria viwili, kushoto na kulia, mwanzoni na mwisho wa safu ya ingizo. Kwa kutumia kitanzi cha muda, endesha hadi kielekezi cha kushoto kiwe kikubwa kuliko au sawa na kielekezi kulia. Katika kitanzi, badilisha vipengele kwenye vielelezo vya kushoto na kulia. Ongeza kielekezi cha kushoto na upunguze kielekezi cha kulia. Rudia utaratibu huu hadi kitanzi kisimame, ambayo inamaanisha kuwa kamba nzima imebadilishwa. 