Jonot ovat yleensä turhauttavia tosielämässä, mutta tietokoneohjelmassa ne voivat ratkaista monia ongelmia. Ota selvää, mitä voit tehdä jonolle ja miten.
Jono on monipuolinen tietorakenne, jota voit käyttää useissa eri asetuksissa. Se löytyy kaikkialta suorittimen ajoitusalgoritmeista verkkosovelluksiin.
Jos pyrit Python-kehittäjäksi, on tärkeää, että pääset vauhtiin tämän yksinkertaisen mutta kaikkialla läsnä olevan tietorakenteen avulla. Opitaan, mikä on jonotietorakenne ja kuinka se toteutetaan Pythonissa.
Mikä on jonotietorakenne?
Jono on lineaarinen tietorakenne, joka noudattaa FIFO (First-In-First-Out) -periaatetta. Tämä tarkoittaa, että kun haet elementin jonosta, saat sen, minkä lisäsit ennen muita.
Tässä ovat perustoiminnot, jotka voit suorittaa jonossa:
- Jono: Lisää elementtejä jonoon.
- Poista jonosta: Poista elementtejä jonosta.
- Tulosta: Tulosta jonon elementit.
- Etuosa: Hanki elementti jonon etupuolelle.
- Takana: Hae elementti jonon takaosassa.
Voit toteuttaa jonotietorakenteen Pythonissa kahdella tavalla: käyttämällä joko luettelosäilöä tai kaksipäistä jonoa kokoelmamoduulista. Tässä ohjelmassa käytät luetteloa.
Kuinka toteuttaa jonotietorakenne Pythonissa
Otat jonon käyttöön Pythonin luettelosäilöllä. Aloita ilmoittamalla tyhjä luettelo nimellä jonottaa.
jono = []
Nyt sinun on hyväksyttävä käyttäjän syöte ja suoritettava käyttäjän syöttämä toiminto. Tulosta ensin rivi, joka kehottaa käyttäjää antamaan komennon. Odota sitten käyttäjän syötteitä ja tallenna se komento muuttuja.
Käyttämällä Python if -lauseet, suorita käyttäjän antamaa komentoa vastaava toiminto. Jos he syöttävät tuntemattoman komennon, sulje ohjelma. Laita nämä operaatiot äärettömään kun silmukka varmistaakseen, että ohjelma jatkuu, elleivät he lopeta.
sillä aikaaTotta:
komento = input("Mitä haluat tehdä? ")jos komento == "jono":
#koodi
elif komento == "jonosta":
#koodi
muu:
tauko
tulostusjono)
Jono
Nyt kun olet käsitellyt ohjelman pääohjauskulkua, voit määrittää koodilohkon jokaiselle toiminnolle. Kirjoita ensin enqueuen koodi. Enqueue tarkoittaa elementin lisäämistä jonon loppuun. Voit tehdä tämän käyttämällä liitä() menetelmä:
joskomento == "jono":
jono = int(input("Syötä elementti jonoon:"))
Poistaa jonosta
Kirjoita nyt koodi poistaaksesi elementin jonosta. Voit tehdä tämän käyttämällä pop-menetelmää, jonka indeksinä on 0. Miksi? Kuten aiemmin opit, jono seuraa FIFO-järjestystä, joten ensimmäisen jonoon lisättävän elementin tulee olla ensimmäinen jonosta poistettava elementti.
jos komento == "jonosta":
queue.pop(0)
Edessä
Siirry eteenpäin kirjoittamalla koodi jonon etuosan elementin tulostamiseksi. Tulosta vain jonon 0. indeksi.
jos komento == "edessä":
tulostusjono[0])
Takaosa
Aivan kuten etuosan toiminnon koodi, jos haluat suorittaa takatoiminnon, tulosta elementti viimeisen indeksin kohdalla. Käytä tätä varten ensin len()-funktiota jonossa ja vähennä siitä sitten 1 löytääksesi viimeisen indeksin.
jos komento == "takaosa":
tulosta (jono[len (jono) - 1])
Tulosta
Kirjoita lopuksi tulostuskomennon koodi. Tulosta vain luettelo Pythonin standardilla Tulosta() toiminto.
jos komento == "Tulosta":
tulostusjono)
Jos käyttäjän kirjoittama teksti ei vastaa tuettua komentoa, irtaudu while-silmukasta break-lauseella. Lopullisen koodin pitäisi näyttää tältä:
jono = []
sillä aikaaTotta:
komento = input("Mitä haluat tehdä?\n")jos komento == "jono":
enqueue = int (input("Syötä elementti jonoon:"))
queue.append (jono)
elif komento == "jonosta":
queue.pop(0)
elif komento == "Tulosta":
tulostusjono)
elif komento == "edessä":
tulostusjono[0])
elif komento == "takaosa":
tulosta (jono[len (jono)-1])
muu:
tauko
tulostusjono)
Suorita ohjelma kokeillaksesi erilaisia jonotoimintoja. Käytä print-komentoa nähdäksesi, kuinka ne vaikuttavat jonoosi. Olet nyt luonut oman yksinkertaisen jonototeutuksen Pythonissa.
Jono on vain yksi monista hyödyllisistä tietorakenteista
Tietorakenteen käsite on elintärkeä, joka jokaisen tietojenkäsittelytieteen opiskelijan tulee hallita. Olet todennäköisesti jo oppinut tai työskennellyt joidenkin perustietorakenteiden, kuten taulukoiden tai luetteloiden, kanssa.
Haastattelijoilla on myös tapana kysyä tietorakenteisiin liittyviä kysymyksiä, joten jos etsit paljon palkattua ohjelmointityötä, sinun on päivitettävä tietorakenteiden tuntemusta.