Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako zvrátiť Array čísla s Java

Obrátenie obsah poľa Java je spoločnou úlohou , a nevyžaduje veľa kódu . Existujú rôzne prístupy k obráteniu poradí poľa , ale je najjednoduchšie tým , že pracuje z každého konca poľa smerom k stredu , vymieňať každý pár prvkov v ťahu . Ak chcete zameniť prvok pozície v matici , musíte skopírovať asi polovica z nich do dočasných premenných as you go , pretože akonáhle sa presuniete prvok na inú pozíciu , budete mať prepísané ďalší prvok . Pokyny dovolená 1

Pripravte svoje pole . Ak ešte nemáte objektu poľa v programe , vytvoriť teraz :

//vytvorenie poľa a určiť dĺžku

int [ ] someNumbers = new int [ 13 ] ;

//vytvorenie inštancie pole s niektorými prvkami

for ( int i = 0 ; i < someNumbers.length ; i + + ) Spojené

someNumbers [ i ] = i ;

Tento príklad používa primitívny typ ints , ale táto metóda funguje pre polia akéhokoľvek druhu , vrátane objektov . V tomto príklade pole spočiatku obsahuje čísla bežiace od nuly hore
2

Vytvorte premenné sledovať svoje pozície , ako budete pohybovať po poli od jedného konca : .

//jeden začína na prvom mieste , druhá v poslednej

int leftPosn = 0 ;

int rightPosn = someNumbers.length - 1 ;

algoritmus bude používať slučky , každá iterácia , ktorá bude zahŕňať prehodenie dvoch prvkov , počnúc tým , že vymení prvý a posledný , potom pokračuje smerom k stredu .
3

vytvoriť slučku pre váš algoritmus . Môžete použiť akýkoľvek typ slučky dáva najväčší zmysel pre vás , ale v tomto prípade je najjednoduchšie možnosťou je while :

//overiť , či ľavej a pravej pozície sú stále k dosiahnutiu stredného

while ( leftPosn < rightPosn )

{
obsah

//slučka pokračuje tu

}

slučka bude pokračovať tak dlho , kým po ľavej a pravej strane čítača ešte nedosiahli uprostred poľa .
4

Swap každú dvojicu prvkov v poradí . Vnútri cyklu while ( v " obsah slučka pokračuje tu " ) :

//kopírovať vľavo prvok vo dvojici do novej dočasnej premennej

int tempCopy = someNumbers [ leftPosn ] ;

//kopírovať krajnej prvok do ľavej krajnej polohy

someNumbers [ leftPosn ] = someNumbers [ rightPosn ] ;

/* kópia pôvodnej vľavo prvok z dočasnej premennej

* do pravej krajnej polohy * /

someNumbers [ rightPosn ] = tempCopy ; .

dočasné premenné musia byť k dispozícii v každej iterácii slučky iba
5

Presuňte svoje pozície pult premenné pozdĺž každej dobe slučka spustí . V while kódu slučka bloku ( po swapu ) :

//inkrementácia a dekrementace pozície pokračovať v práci smerom k stredu

leftPosn + + ;

rightPosn - ;

Otestujte si svoje kód bežiaci program a výstup obsah vášho poľa takto ( po while ) :

for ( int j = 0 ; j < someNumbers.length ; j + + )

System.out.println ( someNumbers [ j ] ) ;

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené