En computer algoritme er simpelthen, et sæt regler et program bruger til at løse et problem , i fortrinsvis så få trin som muligt . Algoritmer kan bruges til små opgaver , eller de kan være på kernen af gigantiske selskaber; algoritmen Google bruger til at få søgeresultater er massiv , og er konstant at blive ændret (og en velbevaret hemmelighed ) . Avancerede algoritmer bruger begivenheder og betingede for at opnå det bedste resultat. Grundlæggende Algoritmer
Den grundlæggende idé bag algoritmer - og virkelig, programmer i almindelighed - er at beslutte, hvad du ønsker at udrette , og derefter holde bryde det i trin. For eksempel sige, du ønsker at spille tennis. Du har måske at gøre følgende : Hej
1. . Ring nogle venner og invitere dem til play.2 . Saml dine stuff.3 . Kør til tennisbanen.
Selvfølgelig betyder det ikke altid sker sådan. Så du måske ønsker at forfine , at både være mere specifik og dække alle mulige resultat.
1. . Ringe til en ven og invitere dem til at spille. Hvis vennen siger nej , skal du gentage dette trin med en anden ven . Hvis ven siger, ja , gå til Trin # 2.2. Beslut en tid og sted til play.3 . Find din tennis racket.4 . Sæt din tennisketsjer i din car.5 . Ti minutter før [ tid ] sker, køre til [ placering] .
Som du kan se , kan du holde bryde dette ned i yderligere skridt og yderligere alternative scenarier.
Ingredienser af algoritmer
mere kompliceret algoritme over rent faktisk indeholder en række programmerings principper. Tag et kig på Step # 1. . Det er en grundlæggende programmering loop : holde gør en bestemt opgave ( ringer venner ), indtil en betingelse er opfyldt ( man siger ja )
Du kan også se på det som et "case " eller en " if /then " . erklæring. I tilfælde af " ja", skal du gå til Trin # 2 . I tilfælde af "nej", gå til Trin # 1 . Eller, hvis "ja", skal du gå til Trin # 2 . Hvis nogen andet svar , skal du gentage Trin # 1 . Du er nødt til personligt at afgøre den bedste metode til at bruge til hver enkelt algoritme
Step # 2 opretter to variabler: . Gangen, og en placering . Du kan tilslutte dem ind i dit program senere, i trin # 5, når dine handlinger er afhængige af værdierne af de to variabler
Endelig Step # 5 indeholder en begivenhed : . Når [ tid ] minus ti minutter opstår , komme i din bil.
Fejlkontrol og helheden
En af de store vanskeligheder bag oprettelsen algoritmer er nødvendigheden for at dække hver eneste situation. Dette er mest tydeligt illustreres i at skabe programmer, der er afhængige af brugerens input . For eksempel, i et videospil , hvad hvis spilleren beslutter sig for at dræbe en karakter, der er afgørende for plottet ? Laver du det tegn uforgængelige ? Har du skabe et alternativ sejr tilstand? I en online-formular , hvad nu hvis du beder brugerne om at indtaste et tal mellem et og 10 , og de input " bob " ? For at skabe de mest robuste algoritme er muligt, skal du tænke ud af alle mulige udfald og bygge i kontrollen af hver af dem.