<prompt> Kwa kuzingatia kichwa cha orodha iliyounganishwa moja kwa moja, pindua orodha, na urudishe _orodha iliyo kinyume_.Mfano wa 1:Ingizo: kichwa 1,2,3,4,5Pato: 5,4,3,2,1Mfano wa 2:Ingizo: kichwa 1,2Pato: 2,1Mfano wa 3:Ingizo: kichwa Pato: Vikwazo: Idadi ya nodi katika orodha ni safu 0, 5000. -5000 Node.val 5000Fuatilia: Orodha iliyounganishwa inaweza kubadilishwa kwa kurudia au kujirudia. Unaweza kutekeleza zote mbili?  <response>: chatuOrodha ya darasa: def __init__binafsi, val0, nextNone: self.val val self.next ijayodef reverse_listkichwa: prev Hakuna sasa kichwa wakati sasa sio Hakuna: next current.next sasa.next prev prev sasa sasa ijayo kurudi kablamaelezoKanuni ya kubadilisha orodha iliyounganishwa moja kwa moja inahusisha kudumisha viashiria vitatu: prev, current, na ijayo.1. Anzisha prev kubatilisha na sasa kwenye kichwa cha orodha iliyounganishwa.2. Rudia kupitia orodha iliyounganishwa hadi current inakuwa batili.3. Katika kila marudio, weka ifuatayo kuwa nodi inayofuata ya current.4. Onyesha inayofuata ya sasa hadi prev.5. Sogeza prev hatua moja mbele kwa kuiweka current.6. Hatimaye, sogeza current hatua moja mbele kwa kuiweka inayofuata.7. Orodha iliyounganishwa iliyogeuzwa inapatikana wakati current inakuwa batili, na prev itakuwa kichwa cha orodha mpya iliyogeuzwa. 