Kuidas mõelda algoritmiliselt

Algoritm on probleemide lahendamise meetod, mis kasutab ülesannete võimalikult tõhusaks täitmiseks loogilist arutluskäiku. Kuigi võite arvata, et ainult arvutid kasutavad algoritme, lahendavad inimesed tegelikkuses probleeme iga päev algoritmiliselt. Kui soovite oma algoritmilist mõtlemist parandada, lähenege igale probleemile nagu loogilisele ülesandele. Tuvastage probleem selgelt ja seejärel sisestage probleemi kohta võimalikult palju üksikasju. Kasutage “kui-siis” lähenemisviisi, et määrata kindlaks parimad sammud probleemi tõhusaks lahendamiseks. Harjutage seda mõtteviisi iga päev, kasutades algoritmilist lähenemisviisi kõigi igapäevaste ülesannete jaoks, joonistades otsustuspuid ja mängides mänge, et oma loogilist mõttekäiku teravdada. .

1
Tuvastage ja määratlege probleem selgelt, et otsustada, kuidas edasi minna. Kõik algoritmid algavad probleemi või ülesande selgest definitsioonist. Heitke pilk antud ülesandele ja määratlege probleem nii selgelt kui võimalik. Selle teabe abil saate seejärel koostada toimingute jada, et probleem lahendada kõige loogilisemal viisil. Kui olete probleemi tuvastanud, pange see lihtsasse lausesse. Näiteks kui teie maja on alati segane, võite öelda: “Ma pean oma asjade paremaks korraldamiseks välja töötama süsteemi.” Need probleemid ei pea olema keerulised. Saate kasutada sama loogilist arutluskäiku, et otsustada, mida tahad süüa. Probleemiks võib olla: “Ma ei suuda otsustada, mida menüüst välja tellida.” See on probleemi ja ülesande selge määratlus, mis tuleb lahendada. Teise võimalusena võib teil olla pigem ülesanne kui probleem. Teie ülesandeks võib olla: “Ma pean toidu ostmise 30 minuti jooksul lõpetama.” Kasutage selle ülesande täitmiseks samu tehnikaid.

2
Sisestage kogu teave, mida te juba teate. Algoritm töötab ainult siis, kui sisestate probleemi lahendamiseks süsteemi õiged sisendid. Kohtle oma aju samamoodi. See saab probleeme lahendada ainult siis, kui tal on õige teave. Kui olete probleemi tuvastanud ja välja öelnud, alustage selle lahendamise strateegia kujundamist. Jälgige olukorda ja õppige rohkem. Lisage kogutud lisateave ja kirjeldage probleemi selgemalt. Näiteks võib teie probleem olla järgmine: “Minu auto teeb imelikku müra.” See on hea algus, kuid probleemi tõhusaks lahendamiseks liiga lai. Sisestage lisateavet selle kohta, kust heli tuleb, kuidas see kõlab ja millal see ilmub. Töötage sellega, et “Minu auto esiosast kostab metallist ragisevat häält, kui ma kiirusel üle 30 miili tunnis pidureid rakendan.” strateegia töötab ka lihtsate ülesannetega. Kui teil on toidu ostmiseks aega vaid 30 minutit, alustage oma ostunimekirja ja poe paigutuse sisestamisega. Seejärel kasutage seda teavet, et kavandada järjekord, kuhu igasse vahekäiku sisenete.

3
Jagage kõik ülesanded väiksemateks tükkideks. Tehke iga ülesanne võimalikult lihtsaks. See muudab probleemide lahendamise protsessi palju paremini juhitavaks. Ärge muretsege veel sündmuste õige järjekorra leidmise pärast. Siinkohal loetlege lihtsalt kõik pisiasjad, mida peate probleemi lahendamiseks tegema. Näiteks kui soovite oma kodu koristada, mõelge sellele, kuidas te selle ülesande tükeldaksite. Peaksite tolmuimejaga imema, vannitoa põrandaid küürima, määrdunud riideid üles korjama, prügi välja viima, nõusid pesema, kappidelt tolmu pühkima ja aknaid pesema. Need ülesanded ei pruugi olla korras, kuid need on hallatavad ülesanded, mida saate edasi jagada.

4
Korraldage sammud kõige loogilisemas järjekorras. Algoritmide eesmärk on lahendada ülesandeid võimalikult tõhusal viisil. Pärast probleemi määratlemist ja vajalike ülesannete jaotamist seadke need ülesanded kõige loogilisemasse järjekorda. Mõelge igale etapile, mis sõltub eelmisest, ja järjestage ülesanded selle suhte ümber. Jäädes kodukoristamise näite juurde, mõelge oma ülesannete kõige loogilisemale järjestusele. Loogiliselt võttes ei saa sa põrandat tolmuimejaga imeda enne, kui oled riided üles võtnud, seega võta riided enne ära. Samamoodi ei saa te aknaid pesta, kui põrand on pesemisest märg, seega puhastage aknad enne põranda pesemist.

5
Ennetage muutujaid, kasutades lähenemist “kui-siis”. Kõigil probleemidel ei ole lihtsat sündmuste jada. Paljude probleemide või ülesannete puhul on mitu teed, mis võivad sisendite põhjal muutuda. Siin on “kui-siis”. lähenemine tuleb sisse ja see on algoritmide põhiosa. Mõelge erinevatele muutujatele, millega võite selle probleemi lahendamisel kokku puutuda. Seejärel mõelge, mida teeksite, kui kohtaksite iga muutuja. Selle lähenemisviisi abil saate lahendada probleemi, näiteks loogilise süsteemi. Kui teie probleemiks on teie autos esinev kummaline müra, võib see lähenemisviis aidata teil selle asukoha kindlaks teha. Teie jada võiks olla järgmine: “Kui heli on rehvidest kostuv kriiksatus, siis ma kontrollin pidureid. Kui heli on metallist koputav heli, siis kontrollin mootorit.” See lähenemine on põhimõtteliselt see, kuidas algoritm töötab , ja võib olla väga üksikasjalik. Lisage nii palju sisendeid kui vaja, et määrata kindlaks kõik esinevad muutujad.

6
Kavandage oma sammud muutujate ümber, millega võite kokku puutuda. Pärast sammude jaotamist ja muutujate prognoosimist pakkuge välja, kuidas probleemi lahendada. Mõelge sellele protsessile nagu vooskeemile. Kaardistage oma toimingute jada ja sammud, mida teete, kui kohtate teatud muutujaid. Auto näite juurde jäädes mõelge, kuidas tuvastate auto tekitatava müra. Seejärel, kui olete allika leidnud, kavandage järgmised sammud, kuidas probleemi lahendada.Järgmine on sündmuste loogiline jada, mis põhineb muutujatel, millega auto parandamisel kokku puutute: Kui heli tuleb rehvid, vaatan pidurid üle. Kui pidurid on uued, siis vaatan laagrid üle. Kui laagrid on kehvad, siis vahetan välja. Kui ma ei leia müra allikat, viin auto mehaaniku juurde. Kui koostaksite arvutialgoritmi, siis vajaks see väga täpseid samme ja viimse detailini planeeritud sisendeid. Kuna inimmõistus saab hakkama rohkemate nüanssidega kui arvuti, võite probleemi lahendamisel olla oma sammudega pisut üldisem.

7
Planeerige oma algoritmis silmus, kui te probleemi alguses ei lahenda. Algoritmi koostamine võib olla katse-eksituse protsess ja see ei pruugi esimesel korral õigesti õnnestuda. Sel juhul plaanige naasta algusesse ja lahendada probleem uuesti. Arvutiprogrammeerimises on see silmus. Mõelge sellele kui “tagasi joonestuslauale” lähenemisele probleemide lahendamiseks. Silmused on olulised, kuna need takistavad teil minna mööda teed, mis ei tööta. Kui teie esialgsed lahendused probleemi ei lahenda, on samade toimingute tegemine kahjulik. Tagasipööramisel ja lähenemise ümberkujundamisel on palju suurem eduvõimalus. Silmus oleks kasulik, kui te ei leia oma autost müra allikat. Algselt arvasite, et probleem võib olla pidurites või mootoris, kuid uurimise käigus leiate, et see ei tulnud kummastki kohast. Sel juhul pöörduge tagasi algusesse. Sõitke autoga ringi, rakendage pidureid ja kasutage müra allika leidmiseks erinevaid kiirusi.

8
Tehke toimingud esinevate muutujate põhjal. Kui planeerimisetapp on tehtud, alustage oma probleemi lahendamist. Töötage läbi oma vooskeemi ja järgige konkreetseid toiminguid, mis põhinevad esinevatel muutujatel. Järgige seda protsessi, kuni leiate probleemi juure ja lahendate selle. Siin on algoritmiline viis auto parandamiseks: minu autost kostab kummalist müra. Kui kriuksub, siis vaatan rehve üle. Kui see on koputus, siis ma kontrollin mootorit. Heli on kriiskav, nii et ma kontrollin pidureid. Eemaldan piduriklotsi ja näen, et see on kulunud. Paigaldan uue piduriklotsi ja hääl on kadunud. Olen probleemi lahendanud. Pidage meeles, et teie algoritm võib kohata ootamatuid muutujaid. Võimalik, et kontrollite oma pidureid, kuid avastate, et ka teie rehvis on auk. See on täiesti uus probleem, mis nõuab uusi toiminguid. Kohandage oma lähenemist, kui tabate ootamatuid muutujaid.

9
Lähenege oma igapäevastele ülesannetele, kuna need on algoritmid. Maailm on täis rohkem algoritme, kui võite arvata, inimesed lihtsalt ei mõtle nendele sel viisil. Harjutage oma algoritmilist mõtlemist, lahendades oma igapäevased ülesanded nii, nagu need oleksid algoritmid. Planeerige loogilised sammud ja kasutage nende saavutamiseks “kui-siis” lähenemisviisi. Aja jooksul harjute probleeme sel viisil lahendama. Näiteks retsept on sisuliselt algoritm. See lahendab toidukorra loomise probleemi, kasutades loogiliselt järjestatud sammude loendit. Mõelge oma tööle sõitmisele. Võite öelda: “Kui maanteel on liiklus, siis ma lähen kõrvaltänavatele.” See on veel üks igapäevane algoritm, mida paljud inimesed pidevalt kasutavad.

10
Planeerige oma rõivad, kasutades “kui-siis” lähenemisviisi. Riietumine on suurepärane igapäevane näide algoritmist. Igaüks teeb oma riietuse valikul otsuseid ilma, töökoha, nädalapäeva ja isikliku stiili põhjal. Visualiseerige neid samme algoritmidena, et treenida oma meelt algoritmiliselt mõtlema. Lihtne riietumise algoritm on järgmine: “Kui sajab vihma, kannan jopet. Vihma ei saja. Seetõttu ei kanna ma jopet.” See on loogiline sammude voog. Veel üks hea näide on: “Kui meil on täna tööl koosolek, kannan lipsu. Kui me seda ei tee, siis riietun vabalt.â€

11
Koostage probleemide lahendamiseks otsustuspuu või vooskeem. Mõnikord on algoritme raske visualiseerida, eriti kui need muutuvad keerukamaks. Looge oma otsuste jaoks visuaalne plaan, koostades otsustuspuu või vooskeemi. Üles kirjutage oma probleem või ülesanne. Seejärel loetlege võimalikud sammud, mida saate ülesande täitmiseks teha. Olge nii konkreetne kui võimalik. Kui olete selle teinud, korraldage sammud ülesande täitmiseks kõige loogilisemas järjekorras. Vooskeem on abiks, kui teate juba sammude üldist järjekorda. Ajurünnakuks kasutage otsustuspuud. Klassitöö kirjutamise vooskeemi jaoks kirjutage oma põhitöö ülaossa. Seejärel kirjutage üles kõik tõendid, mis teil selle väitekirja tõestamiseks on. Järjestage tõendid loogilisse järjekorda, mis toetab lõputööd kõige paremini, ja koostage oma töö selles järjekorras. Kui te ei tea, kust alustada, joonistage ülesandele ring. Joonistage ringist jooned ja kirjutage üles sammud, kuidas saaksite ülesande lahendada. Seejärel hakake kõrvaldama samme, mis ei tundu kasulikud. Lõpuks jäetakse teile abiks olevate sammude loend.

12
Mängige oma oskuste täiustamiseks algoritmimänge. Lisaks igapäevaste ülesannete lahendamisele algoritmidega võivad mängud aidata teil ka algoritmiliselt mõelda. On palju arvutimänge ja programme, mis on loodud loogilise mõtlemise parandamiseks. Otsige Internetist või rakenduste poodidest, et leida loogikamänge, mis võivad teie mõtlemist parandada ja samal ajal ka teid lõbustada. Strateegialauamäng nagu Risk on hea madaltehnoloogiline valik, mida saate oma sõpradega mängida. Mäng hõlmab sisendite ja muutujate planeerimist ja neile reageerimist. Sellised mängud on lõbus viis oma algoritmiliste oskuste treenimiseks. Male on ka suurepärane lauamäng loogilise mõtlemise jaoks. Kontrollige ka rakendusi ja mobiilimänge. On palju loogikamänge, mis aitavad teie mõtlemisoskust parandada.