import random #Jono -tietotyyppi class Jono: def __init__(self): #Luodaan lista self.lista = [] #taulukko def lisaa(self,tieto): #Lisätään alkio oikeaan kohtaan print("Lisätään jonoon luku " +str(tieto)) self.lista.append(tieto) def poistaSeuraava(self): # palauttaa jonon seuraavan alkion ja poistaa sen listasta. t = self.lista[0] self.lista.pop(0) print ("" +" Jonosta poistetaan " +str(t)) return t def tulosta(self): #Tulostetaan print(self.lista) print("") #pino - tietotyyppi class Pino: def __init__(self): #Luodaan lista self.lista = [] #taulukko def lisaa(self,tieto): #Lisätään alkio oikeaan kohtaan print("Lisätään Pinoon " +str(tieto)) self.lista.insert(len(self.lista),tieto) def poistaSeuraava(self): # palauttaa jonon seuraavan alkion ja poistaa sen listasta. t = self.lista[len(self.lista)-1] self.lista.pop(len(self.lista)-1) print("Pinosta poistetaan " +str(t)) return t def tulosta(self): #Tulostetaan print(self.lista) print("") #Luodaan oliot ja käytetään niiden operaatioita jono = Jono() for x in range(5): luku = random.randrange(0,100) jono.lisaa(luku) jono.tulosta() while (len(jono.lista)) > 0: jono.tulosta() a = jono.poistaSeuraava() print (int(a)) print("jono on tyhjä!") pino = Pino() for y in range(5): luku = random.randrange(0,100) print(luku) pino.lisaa(luku) pino.tulosta() while (len(pino.lista)) > 1: pino.tulosta() a = pino.poistaSeuraava() print (int(a)) print("pino on tyhjä!")
Ohjelmoin aikani kuluksi jono ja pino -tietotyypit pythonilla inspiroituneena ohjelmointiputkan nimimerkin "koodaaja" -Rakenne -tietotyypistä, jonka hän julkaisi aiemmin tässä huhtikuussa 2021.
Tässä tulosteessa demonstroidaan jonon ja pinon kehitystä.
Python-Tuloste
Lisätään jonoon luku 47 [47] Lisätään jonoon luku 10 [47, 10] Lisätään jonoon luku 83 [47, 10, 83] Lisätään jonoon luku 81 [47, 10, 83, 81] Lisätään jonoon luku 12 [47, 10, 83, 81, 12] [47, 10, 83, 81, 12] Jonosta poistetaan 47 47 [10, 83, 81, 12] Jonosta poistetaan 10 10 [83, 81, 12] Jonosta poistetaan 83 83 [81, 12] Jonosta poistetaan 81 81 [12] Jonosta poistetaan 12 12 jono on tyhjä! 92 Lisätään Pinoon 92 [92] 24 Lisätään Pinoon 24 [92, 24] 74 Lisätään Pinoon 74 [92, 24, 74] 91 Lisätään Pinoon 91 [92, 24, 74, 91] 14 Lisätään Pinoon 14 [92, 24, 74, 91, 14] [92, 24, 74, 91, 14] Pinosta poistetaan 14 14 [92, 24, 74, 91] Pinosta poistetaan 91 91 [92, 24, 74] Pinosta poistetaan 74 74 [92, 24] Pinosta poistetaan 24 24 pino on tyhjä!
Päivitys 19:49 - Python -koodi lisäsi väärään kohtaan pinoon uuden alkion, korjasin ohjelmointivirheen, ja tulosteen ajan tasalle ennen kuin joku ehtii huomauttamaan niistä.
Päivitän nämä myös Githubiin seuraavaksi tälle ja Java-toteutukselle luomaani repoon.
Aihe on jo aika vanha, joten et voi enää vastata siihen.