Miksi kaikki tämä puhe algoritmit? Tämän pitäisi olla tietojenkäsittelytieteen kurssi: meidän pitäisi puhua tietokoneista. Mieti tätä lainaus: [Anany Levitin, Computing Research News, tammikuu 1993, s. 7] Tietotekniikka ei ole enempää tietokoneita kuin tähtitiede on noin kaukoputkia, biologia on noin mikroskoopit tai kemia on noin mukit ja koeputkia.
Tiede ei ole siitä työkaluja, se on siitä, miten käytämme niitä ja mitä me selville, kun teemme. Tietojenkäsittelytieteen (tunnetaan myös tietojenkäsittelytiede) ei ole kyse tietokoneita.
Silti on varmasti paljon tietokoneita ympäri. Käytät tietokonetta tämän kurssin, kun ohjelma; useimmat tietojenkäsittelytieteen kursseja joissa käytetään tietokoneita tavalla tai toisella. Tietojenkäsittelytieteen määritellään usein: [G. Michael Schneider ja Judith L. Gersting, Kutsu Computer Science]
tutkimus algoritmit, kuten 1. muodollisen ja matemaattisia ominaisuuksia. 2. Heidän laitteisto oivallusta. 3. Heidän kielellinen oivallusta. 4. Heidän hakemuksensa.
Joten, tietojenkäsittelytieteen on todella noin algoritmeja.
Vietämme paljon aikaa tämän kurssin puhumme algoritmeja. Me tarkastelemme miten luoda niitä, miten ne voidaan toteuttaa, ja miten käyttää niitä ratkaisemaan ongelmia. Tässä on hieman enemmän niitä neljä näkökohtaa:
1. muodollisen ja matemaattinen ominaisuudet: Tämä sisältää kysyy kysymyksiä, kuten "mitä ongelmia voidaan ratkaista algoritmit", "mitä ongelmia voimme löytää ratkaisuja kohtuullisen ajan, "ja" on mahdollista rakentaa tietokoneita eri ominaisuuksia, jotka voisivat ratkaista enemmän ongelmia? "
2.
Heidän laitteisto toteutukset: Yksi tavoitteista kun rakennuksen tietokoneita on tehdä ne nopeasti. Eli ne pitäisi voida suorittaa algoritmeja, jonka ohjelmoija määrittää nopeasti. Niiden olisi myös hyödyntämään niiden muistin ja voi käyttää muita järjestelmiä (levyt, verkot, tulostimet, ja niin edelleen). On monia vaihtoehtoja, jotka on tehty suunnittelussa tietokone; kaikki valinnat vaikuttaa jonkin verran valmiuksia lopputuotteen.
3. Heidän kielellinen realisaatiot: On monia tapoja ilmaista algoritmeja niin tietokone voi ymmärtää niitä.
Nämä kuvaukset on kirjoittanut henkilö ja sitten seuraa tietokoneella. Tämä edellyttää jonkinasteista "kieli", joka voidaan ymmärtää sekä ihmisiä ja tietokoneen verk-. Jälleen on monia vaihtoehtoja täällä, jotka vaikuttavat helposti sekä henkilö ja tietokone voi työskennellä kuvausta.
4. Niiden sovellu