Înțeles algoritmului cuvânt este foarte similar cu ceea ce înseamnă cuvântul instrucțiunile de reteta. Cu toate acestea, spre deosebire de orice algoritm rețetă sau proces trebuie să aibă următoarele proprietăți.
1. Punerea în aplicare a algoritmului este împărțit într-o secvență de etape de acțiune complet. Doar a face o acțiune (echipă), puteți trece la performanța următoare. Această proprietate se numește incrementele algoritm. Produce fiecare executor de acțiune necesită o indicație specială în înregistrarea algoritmului (echipa).
2. Claritatea - algoritmul nu trebuie să conțină dispoziții, sensul care poate fi percepută ambigua interpret, și anume Algoritmul de înregistrare trebuie să fie suficient de clară și completă a interpretului nu a apărut necesitatea de a lua orice decizii independente. Algoritmul este conceput pentru a efectua întotdeauna „să nu speculeze“ artist. Algoritmul este compus din comenzile incluse în SIC.
Luați în considerare celebrul exemplu de algoritm „intern“ - un algoritm de trecere pe strada: „Uita-te la stânga. Dacă nu există mașini, ajungând la mijlocul străzii. Dacă da, așteptați până când se va deplasa, și așa mai departe. " Imaginați-vă situația: mașina din stânga acolo, dar nu merge - a schimbat roata. Dacă credeți că autorul algoritmului trebuie să aștepte, atunci înțelegi algoritmul. Dacă decideți că vă puteți muta, în afară de algoritmul rafinat din cauza neprevăzute (în opinia dumneavoastră!) Circumstanțele, nu va fi învățat conceptul de algoritm.
3. Determinancy (certitudine și ambiguitate). Fiecare echipă determină algoritmul de acțiune lipsită de ambiguitate artist, și ar trebui să fie clar definite, care comanda este executată următoarea. Aceasta este, în cazul în care algoritmul este aplicat în mod repetat același set de date de intrare, de ieșire pe care le primește de fiecare dată același rezultat.
4. Productivitatea - executarea algoritmului trebuie să se încheie într-un număr finit de pași, și, astfel, rezultatul rezolvării problemei este de a fi obținut. Ca unul dintre posibilele rezultate pot fi de a stabili faptul că problema nu are nici o soluție.
impactul proprietății conține o proprietate de finitudine - finalizarea algoritmului într-un număr finit de pași.
5. Masa - algoritmul este potrivit pentru a rezolva orice problemă într-o anumită clasă de probleme, și anume algoritm funcționează corect pe un set de date de intrare, care se numește domeniul de aplicabilitate al algoritmului.
Proprietatea definește masa mai degrabă calitatea algoritmului și nu un proprietăți obligatorii (ca discrete, claritate, etc.). Există algoritmi regiune de aplicabilitate este limitată numai date de intrare de apelare sau lipsa acestora (de exemplu, primirea unui număr fix de cifre ale adevăratei p). Corect să spunem că algoritmul ar trebui să se aplice la orice date din domeniul său, iar masa cuvântul nu este întotdeauna adecvată pentru a descrie astfel de proprietăți.
Conceptul algoritmului
Pe scurt, am stat următorul concept al algoritmului.
Algoritm - clară și precisă executor prescripție pentru a efectua o secvență finită de acțiuni care rezultă din datele originale la un rezultat dorit.
Această definiție nu este o definiție în sensul matematic al cuvântului, și anume, acest lucru nu este o definiție formală (a se vedea definiția formală a unui algoritm. în articolul „Teoria algoritmilor“).
Rețineți că, pentru fiecare artist un set de acțiuni posibile (SRS) este întotdeauna limitată - nu poate fi nici un artist, a cărui fiecare acțiune este validă. Pentru a parafraza raționamentul lui Kant justifică afirmația de mai sus, după cum urmează: „În cazul în care un cântăreț acolo, printre acțiunile sale posibile ar fi crearea unei astfel de piatră pe care nu se poate ridica. Dar acest lucru contrazice admisibilitatea acțiunii „ridică nici o piatră.„“
Este interesant faptul că există sarcini pe care oamenii, în general vorbind, este în măsură să decidă fără a cunoaște algoritmul pentru rezolvarea ei. De exemplu, în fața unui om mint poze cu pisici și câini. Scopul este de a determina o pisică sau de câine este prezentat într-o anumită fotografie. Omul rezolvă această problemă, dar pentru a scrie un algoritm pentru a rezolva această problemă în timp ce este extrem de dificil.
Pe de altă parte, există sarcini pentru care imposibil de a construi proceduri de soluții. Și acest lucru poate fi dovedit riguros. Acest lucru puteți citi în articolul „problemele algoritmic nerezolvabile.“ 2