Twitter-opas

twitter opas

Twitter-opas

Olin erittäin tyytyväinen Twitter-oppaaseen. Se on selkeä ja vähätekstinen, juuri sellainen mitä haluankin käyttää näiden minun oppilaiden kanssa. Oppilaani ovat suurimmaksi osaksi ikäihmisiä. En osaa sanoa, miten oppilaat käyttävät Twitteriä jatkossa, mutta ainakin he saivat hyvin selkeän kuvan siitä, mitä twiittaaminen on. Käytän opastasi jälleen kevään kursseilla.

anonyymi, opettaja

Tietojen käsittelyn perusteita: pino ja jono

Pino (stack) on nimensä mukaisesti tietorakenne jossa viimeisenä lisätty tieto noudetaan ensimmäisenä. Jos esimerkiksi pinoamme lautasia, niin viimeisenä pinon päällimmäiseksi laitettu lautanen on se jonka me ensimmäisenä otamme pinosta pois. Lautaspinon tavoin, myös tietorakenteessa käytäntö on, että jos otamme päällimmäisen datan pinosta pois, sen uudelleenkäyttö vaatii datan sijoittamista takaisin pinoon. Pinosta puhutaan myös LIFO-tietorakenteena, (Last-In, First-Out).

Jono (queue) taasen tunnetaan FIFO-tietorakenteena (First-In, First-Out), jossa siis ensimmäisenä sijoitettu data on myös ensimmäisenä saatavilla. Vertauksena vaikkapa kaupan kassajono. Ensimmäinen asiakas saa maksaa ostoksena ennen muita ja pääsee lähtemään kotimatkalle. Muut asiakkaat odottavat sen mukaisesti, missä järjestyksessä he ovat kassajonoon saapuneet.

Normaalien kassajonokäytäntöjen mukaisesti, jos asiakas palaa kauppaan vielä jotain hakemaan, joutuu hän uudestaan jonoon odottamaan omaa vuoroaan.

Tosiasiassahan lista itsessään ei sisällä mainittua dataa vaan viitteen siihen, on helpompi esittää asia kuten sen yllä tein.

Tietojen käsittelyn perusteita: järjestetty lista

Järjestetty lista (ordered list) poikkeaa linkitetystä listasta merkittävästi. Siinä missä linkitetyssä listassa pitää lähteä aina alusta (tai lopusta jos on kahteen suuntaan linkitetty lista) hakemaan tietoa, niin järjestetyssä listassa haku voidaan kohdentaa avaimen perusteella suoraan oikeaan elementtiin.
Jatka lukemista ”Tietojen käsittelyn perusteita: järjestetty lista”

Tietojenkäsittelyn perusteita: tietorakenteet – linkitetty lista

Linkitetty lista (linked list) on yksi yleisimmistä tietorakenteista ja se koostuu yhdestä tai useammasta elementistä, joissa on normaalin datan lisäksi ns. linkki seuraavaan elementtiin. Tietojenkäsittelyssä puhutaan usein myös solmuista. Kahteen suuntaan linkitetyssä listassa elementeillä on datan lisäksi linkki seuraavaan ja edelliseen elementtiin. Tosiasiassahan lista itsessään ei sisällä mainittua dataa vaan viitteen siihen, on helpompi esittää asia kuten sen yllä tein.

Tavallisesti linkitetystä listasta voidaan hakea tietty elementti vain liikkumalla ensimmäisestä elementistä kohti listan loppua elementti kerrallaan. Kahdensuuntaisessa listassa voidaan aloittaa alusta tai lopusta ja vaihtaa myös suuntaa.
Jatka lukemista ”Tietojenkäsittelyn perusteita: tietorakenteet – linkitetty lista”

Lisää alkeita: kahden muuttujan arvon vaihtaminen

Kahden luvun sisältävän muuttujan vaihtaminen on yksinkertaista. Se onnistuu yhteen- ja vähennyslaskuilla. Alla esimerkki.

// oletetaan, että a=5 ja b = 10
b = b + a;	// b = 15
a = b - a;	// a = 10
b = b - a;	// b = 5

Kun käsittelyyn otetaan kaksi merkkijonoa sisältävää muuttujaa tarvitaan ohjelmointikielen omia metodeja/funktioita avuksi. Javassa metodien nimet ovat substring(),length() ja esim. FreeBasicissa tarvittavat funktiot ovat mid() ja len().

// Java esimerkki.
// tekstiä sisältävien muuttujien arvojen vaihto vaatii ihan vähän enemmän
// oletetaan, että a = "Moi" ja b = "Heippa"
b = b + a;	                                 // b = "HeippaMoi"
a = b.substring(0,b.length() - a.length());	 // a = "Heippa"
b = b.substring(a.length());                     // b = "Moi"

Javalla toteutettu ohjelma jossa esimerkkinä toteutettu sekä int, että String muuttujien arvojen vaihtaminen löytyy .pdf muodossa viereisestä linkistä. varSwap_java.pdf

Algoritmien alkeita: merkkijono kokonaisluvuksi

Useimmat ohjelmointikielet tarjoavat valmiit funktiot tekstijonon muuttamiseksi kokonaisluvuksi ja toisinpäin. Tämä ei kuitenkaan tarkoita sitä, että tämänkaltaisten funktioiden toiminnan pohdiskelu olisi turhaa. Kaikenlaisten algoritmien (suht turhienkin) pohdiskelu on mukavaa aivojumppaa.

Ohjelmoinnin perusteet osaavalle merkkijonon muuntaminen kokonaisluvuksi oman algoritmin avulla on kohtuullisen helppo tehtävä. Ohessa oma versioni, jonka olen toteuttanut Javalla, toki se on helposti muunnettavissa muillekin ohjelmointikielille. Olen kommentoinut algoritmin toiminnan koodin ohessa.

Voit ladata koodin pdf-muodossa viereisestä linkistä. str2int