import java.util.ArrayList;
import java.util.Random;
public class DataStructs {
private ArrayList<Integer> list;
private Random r;
public DataStructs() {
this.list = new ArrayList<Integer>();
this.r = new Random();
}
public void tulosta() {
for (int x=0;x<list.size();x++ ) {
System.out.print("" +list.get(x).toString() +",");
}
}
public ArrayList<Integer> getList() {
return list;
}
public void setList(ArrayList<Integer> list) {
this.list = list;
}
public Random getR() {
return r;
}
public void setR(Random r) {
this.r = r;
}
}DataStructs -isäluokka ylhäällä
perijät jono ja pino
/*
* Stack -Data Type.
*
* Jere Sumell
* 21.04.2021
* jere.sumell@iki.fi
* jjsume@github
*/
public class Pino extends DataStructs {
public Pino() {
super();
}
public void pinoAdd(Integer x) {
super.getList().add(0, x);
System.out.println(" - " +x +" -lisätty pinoon!");
}
public Integer pinoNext() {
Integer t = null;
if (super.getList().size() >0) {
t =super.getList().get(super.getList().size()-1);
super.getList().remove(super.getList().size()-1);
return t;
}
return 0;
}
public void alustapino(int y) {
Integer temp = new Integer(super.getR().nextInt(100)+1);
for (int x=0;x<y;x++) {
this.pinoAdd(temp);
this.tulosta();
temp = new Integer(super.getR().nextInt(100)+1);
}
}
}Ja jono...
/* Queue -data Type
*
* Jere Sumell
* 21.04.2021
* jere.sumell@iki.fi
* jjsume@github
*/
public class Jono extends DataStructs {
public Jono() {
super();
}
public void jonoAdd(Integer x) {
super.getList().add(x);
System.out.println(" - " +x +" - lisätty jonoon!");
}
public Integer jonoNext() {
Integer t = super.getList().get(0);
super.getList().remove(0);
return t;
}
public void alustaJono(int y) {
Integer temp = new Integer(super.getR().nextInt(100)+1);
for (int x=0;x<y;x++) {
this.jonoAdd(temp);
this.tulosta();
temp = new Integer(super.getR().nextInt(100)+1);
}
}
}Testiluokka, jossa demonstroidaan jonon ja pinon kehitystä satunnaiskokonais lukujen lisäämisen jälkeen...
/*
* Demo Class for Queue and Stack -data types
*
* Demonstrating data structure including Integer -objects evolution.
*
* Jere Sumell
* 21.04.2021
* jere.sumell@iki.fi
* jjsume@github
*/
public class QueueandStackDemo {
public static void main(String[] args) {
Jono jono = new Jono();
Pino pino = new Pino();
//Alustetaan jono ja pino.
pino.alustapino(10);
//Tulostetaan pinon kehitys
System.out.println("pino");
pino.tulosta();
while (pino.getList().size()>0) {
System.out.println(" pinon seuraava poistettava: " +pino.pinoNext());
pino.tulosta();
}
if (pino.getList().size() <=0) {
System.out.println("pino on tyhjä!");
}
//Tulostetaan jonon kehitys
System.out.println("jono");
jono.alustaJono(10);
while (jono.getList().size()>0) {
System.out.println(" jonon seuraava poistettava: " +jono.jonoNext());
jono.tulosta();
}
if (jono.getList().size() <=0) {
System.out.println("jono on tyhjä!");
}
}
}Tässä vielä konsolista output -listaus
- 61 -lisätty pinoon! 61, - 12 -lisätty pinoon! 12,61, - 16 -lisätty pinoon! 16,12,61, - 100 -lisätty pinoon! 100,16,12,61, - 28 -lisätty pinoon! 28,100,16,12,61, - 79 -lisätty pinoon! 79,28,100,16,12,61, - 14 -lisätty pinoon! 14,79,28,100,16,12,61, - 35 -lisätty pinoon! 35,14,79,28,100,16,12,61, - 84 -lisätty pinoon! 84,35,14,79,28,100,16,12,61, - 99 -lisätty pinoon! 99,84,35,14,79,28,100,16,12,61,pino 99,84,35,14,79,28,100,16,12,61, pinon seuraava poistettava: 99 84,35,14,79,28,100,16,12,61, pinon seuraava poistettava: 84 35,14,79,28,100,16,12,61, pinon seuraava poistettava: 35 14,79,28,100,16,12,61, pinon seuraava poistettava: 14 79,28,100,16,12,61, pinon seuraava poistettava: 79 28,100,16,12,61, pinon seuraava poistettava: 28 100,16,12,61, pinon seuraava poistettava: 100 16,12,61, pinon seuraava poistettava: 16 12,61, pinon seuraava poistettava: 12 61, pinon seuraava poistettava: 61 pino on tyhjä! jono 88,13,85,44,43,18,71,66,56,98, jonon seuraava poistettava: 88 13,85,44,43,18,71,66,56,98, jonon seuraava poistettava: 13 85,44,43,18,71,66,56,98, jonon seuraava poistettava: 85 44,43,18,71,66,56,98, jonon seuraava poistettava: 44 43,18,71,66,56,98, jonon seuraava poistettava: 43 18,71,66,56,98, jonon seuraava poistettava: 18 71,66,56,98, jonon seuraava poistettava: 71 66,56,98, jonon seuraava poistettava: 66 56,98, jonon seuraava poistettava: 56 98, jonon seuraava poistettava: 98 jono on tyhjä!
Aihe on jo aika vanha, joten et voi enää vastata siihen.