<prompt> Kwa kuzingatia mkusanyiko kamili nums, sogeza 0 zote hadi mwisho wake huku ukidumisha mpangilio linganifu wa vipengele visivyo sifuri.Kumbuka kwamba ni lazima ufanye hili mahali bila kutengeneza nakala ya safu.Mfano wa 1:Ingizo: nambari 0,1,0,3,12Pato: 1,3,12,0,0Mfano wa 2:Ingizo: nambari 0Pato: 0Vikwazo: 1 nums.length 104 -231 numsi 231 - 1Fuatilia: Je, unaweza kupunguza jumla ya idadi ya shughuli zilizofanywa?  <response>: chatudef moveZeroesnambari: index 0 kwa mimi katika anuwailennambari: ikiwa nambarii ! 0: numsindex numsi index 1 kwa i katika masafa index, lennambari: nambari i 0maelezoKatika kila lugha, algoriti huanza kwa kuanzisha kigezo cha index chenye thamani ya 0. Kisha, inazunguka kwenye safu ya ingizo nums. Ikiwa kipengele cha sasa si sifuri, huweka thamani ya kipengele cha sasa kwa nafasi iliyoonyeshwa na index na kisha kuongeza index. Baada ya kitanzi cha kwanza, vipengele vyote visivyo na sifuri vinawekwa kabla ya vipengele vya sifuri katika safu.Hatimaye, katika kitanzi cha pili, inapeana thamani ya 0 kwa nafasi zote zilizosalia katika safu kutoka kwa index ya sasa hadi mwisho wa safu.Kanuni hii hudumisha mpangilio wa uwiano wa vipengele visivyo sifuri vinaposogezwa upande wa kushoto mwanzoni mwa safu, na kuhakikisha kuwa sufuri husogezwa hadi mwisho wa safu. Algorithm pia hurekebisha safu iliyotolewa mahali kama inavyohitajika. 