Class MyIntArray

java.lang.Object
  |
  +--MyIntArray

public class MyIntArray
extends java.lang.Object

Luokka MyIntArray toteuttaa kokonaislukutaulukon, jonka kokoa voi kasvattaa, josta voi hakea lukuja lineaarisella haulla ja puolitushaulla, mikäli taulukko on suuruusjärjestyksessä, ja jonka voi järjestää suuruusjärjestykseen. Tehtävässä 3.2 on tarkoituksena toteuttaa luokan metodit grow, search, binarySearch sekä sort.


Constructor Summary
MyIntArray(int initialSize)
          Luo uuden taulukon.
 
Method Summary
 java.lang.String arrayItems(int low, int high)
          Palauttaa taulukosta alkiot low - high merkkijonona.
 int binarySearch(int value)
          Etsitään puolitushakua käyttäen taulukosta tiettyä alkiota.
 int getElementAt(int index)
          Taulukon tietyn alkion palauttaminen.
 void grow(int by)
          Kasvatetaan taulukkoa.
 int length()
          Taulukon koon palauttaminen.
 int search(int value)
          Etsitään lineaarista hakua käyttäen taulukosta tiettyä alkiota.
 void setElementAt(int index, int value)
          Taulukon tietyn alkion asettaminen.
 void sort()
          Lajitellaan taulukon alkiot kasvavaan järjestykseen.
 java.lang.String toString()
          Luokan Object metodin uudelleenmääritys.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MyIntArray

public MyIntArray(int initialSize)
Luo uuden taulukon.
Parameters:
initialSize - Taulukon koko
Method Detail

length

public int length()
Taulukon koon palauttaminen.
Returns:
Taulukon koko

getElementAt

public int getElementAt(int index)
                 throws java.lang.ArrayIndexOutOfBoundsException
Taulukon tietyn alkion palauttaminen.
Parameters:
index - Mistä taulukon paikasta alkio palautetaan.
Returns:
taulukon alkio positiossa index.
Throws:
java.lang.ArrayIndexOutOfBoundsException - Jos annettu indeksi on laiton.

setElementAt

public void setElementAt(int index,
                         int value)
                  throws java.lang.ArrayIndexOutOfBoundsException
Taulukon tietyn alkion asettaminen.
Parameters:
index - Monesko alkio asetetaan.
value - Asetettava arvo
Throws:
java.lang.ArrayIndexOutOfBoundsException - Jos annettu indeksi on laiton.

grow

public void grow(int by)
Kasvatetaan taulukkoa. Taulukon sisältö säilyy muuttumattomana.
Parameters:
by - Kuinka paljon taulukon kokoa lisätään.

search

public int search(int value)
Etsitään lineaarista hakua käyttäen taulukosta tiettyä alkiota.
Parameters:
value - Etsittävä arvo
Returns:
pienin indeksi, josta value löytyy tai jokin negatiivinen luku, jos value ei ole taulukossa.

binarySearch

public int binarySearch(int value)
Etsitään puolitushakua käyttäen taulukosta tiettyä alkiota. Huom! Taulukon alkioiden on oltava kasvavassa järjestyksessä, jotta haku on mahdollista.
Parameters:
value - Etsittävä arvo
Returns:
pienin indeksi, josta value löytyy tai jokin negatiivinen luku, jos value ei ole taulukossa.

sort

public void sort()
Lajitellaan taulukon alkiot kasvavaan järjestykseen.

arrayItems

public java.lang.String arrayItems(int low,
                                   int high)
                            throws java.lang.ArrayIndexOutOfBoundsException
Palauttaa taulukosta alkiot low - high merkkijonona.
Parameters:
low - Ensimmäisen tulostettavan alkion indeksi
high - Viimeisen tulostettavan alkion indeksi
Returns:
alkiot peräkkäin merkkijonona.
Throws:
java.lang.ArrayIndexOutOfBoundsException - Jos annettu indeksi on laiton.

toString

public java.lang.String toString()
Luokan Object metodin uudelleenmääritys.
Overrides:
toString in class java.lang.Object