<prompt> Umepewa safu kamili nums ya ukubwa n iliyo na kila kipengele kutoka 0 hadi n - 1 pamoja. Kila moja ya vipengele kutoka 1 hadi n - 1 inawakilisha kipengee, na kipengele 0 kinawakilisha nafasi tupu.Katika operesheni moja, unaweza kuhamisha kipengee chochote hadi kwenye nafasi tupu. nums inachukuliwa kuwa imepangwa ikiwa nambari za vipengee vyote ziko katika mpangilio wa kupanda na nafasi tupu iko mwanzoni au mwishoni mwa safu.Kwa mfano, ikiwa n 4, nums imepangwa kama: idadi 0,1,2,3 au idadi 1,2,3,0...na kuchukuliwa kuwa haijapangwa vinginevyo.Rejesha idadi ya chini zaidi ya shughuli zinazohitajika kupanga_ idadi.Mfano wa 1:Ingizo: nambari 4,2,0,3,1Pato: 3Maelezo:- Sogeza kipengee cha 2 kwenye nafasi tupu. Sasa, nambari 4,0,2,3,1.- Sogeza kipengee 1 kwenye nafasi tupu. Sasa, nambari 4,1,2,3,0.- Sogeza kipengee cha 4 kwenye nafasi tupu. Sasa, nambari 0,1,2,3,4.Inaweza kuthibitishwa kuwa 3 ni idadi ya chini ya shughuli zinazohitajika.Mfano wa 2:Ingizo: nambari 1,2,3,4,0Pato: 0Maelezo: nambari tayari zimepangwa kwa hivyo rudisha 0.Mfano wa 3:Ingizo: nambari 1,0,2,4,3Pato: 2Maelezo:- Sogeza kipengee cha 2 kwenye nafasi tupu. Sasa, nambari 1,2,0,4,3.- Sogeza kipengee cha 3 kwenye nafasi tupu. Sasa, nambari 1,2,3,4,0.Inaweza kuthibitishwa kuwa 2 ndio idadi ya chini ya shughuli zinazohitajika.Vikwazo: n nums.length 2 n 105 0 numsi n Thamani zote za nums ni kipekee.  <response>: def min_operationsidadi: n lenzi nambari idx0 -1 kwa mimi katika safun: ikiwa nambarii 0: idx0 i mapumziko cnt1 0 cnt2 0 kwa i katika safu1, n: ikiwa absnumsi - numsi - 1 ! 1: cnt1 absnambarii - nambarii - 1 - 1 kwa i katika anuwai idx0 1, n: ikiwa numsi numsi - 1: cnt2 1 kurudi dakikacnt1, cnt2 