Ի՞նչ է ալգորիթմը

Մաթեմատիկայում և ինֆորմատիկայում, ալգորիթմը (ստեղծվել է հռչակավոր մաթեմատիկոս Ալ-Խորեզմիի կողմից) քայլ առ քայլ հաշվարկային գործընթաց է։ Ալգորիթմը կիրառվում է հաշվարկներում, տվյալների մշակման և մտահանգումների ավտոմատացման ժամանակ։ Ավելի ճշգրիտ, ալգորիթմը ֆունկցիայի հաշվարկման որոշակի լավ սահմանված արդյունավետ մեթոդ է։

Սկսելով նախնական վիճակից և արված մուտքային տվյալներից (հնարավոր է՝ լինի դատարկություն) և ունենալով գործողությունները բացատրող հրահանգավորում, դրանք կատարելով ստացվում է վերջնական արդյունք։ Մի վիճակից մյուսին անցումը պարտադիր չէ, որ լինի դետերմինացված` որոշ ալգորիթմներ միավորում են պատահական մուտքեր։
Յուրաքանչյուր խնդիր լուծելու համար կարող են գոյություն ունենալ նպատակին հասցնող բազմաթիվ ալգորիթմներ։ Ալգորիթմների արդյունավետության մեծացումը ժամանակակից ինֆորմատիկայի խնդիրներից մեկն է։
Ալգորիթմ իրականացնողը հիմնականում համակարգիչներն ու այլ սարքավորումներն են, սակայն ալգորիթմը պարտադիր չէ, որ կապված լինի ծրագրավորման հետ։ Ուտեստի բաղադրատոմսը նույնպես կարելի է համարել ալգորիթմ։

Տերմինի (եզրի) ծագումը

Ալգորիթմ հասկացությունը մարդկությանը հայտնի է շատ վաղուց, սակայն այնպես, ինչպես մենք հիմա հասկանում ենք, հայտնվել է միայն 20-րդ դարի սկզբերին։ Եզրի ժամանակակից սահմանումը տրված է Ա․ Թյուրինգի, Է․ Պոստի, Ա․Չորչի, Ն․Վինների և Ա․ Մարկովի աշխատանքներում։

Ալգորիթմ տերմինը գալիս է Պարսկաստանից՝ ալ-Խորեզմիի անունից։ Ալ Խորեզմին գիտնական էր, ով մոտ 825 թ. գրեց մի գիրք, որտեղ ներկայացրեց Հնդկաստանում ստեղծված հաշվարկման տասական համակարգը և հավանաբար առաջինը ներկայացրեց Հնդկաստանում ստեղծված 0 թիվը։ Գրքի սկզբնական տարբերակը չի պահպանվել, սակայն 12-րդ դարում Եվրոպա մտած լատիներեն թարգմանությունը մինչև օրս էլ կա։ Անհայտ թարգմանիչի թարգմանությունը հայտնի է որպես Algoritmi de numero Indorum («Հնդկական հաշվի մասին ալգորիթմներ»), սակայն արաբները այն անվանում էին Քիտաբ ալ֊ջեբր վալ֊մուկաբալա («Գիրք գումարման և հանման»)։ Գրքի օրիգինալ անվանումից է առաջացել algebra (հանրահաշիվ) բառը։

Հատկություններ

Ալգորիթմների տարբեր սահմանումներ պարունակում են հետևյալ պահանջները։

  • Դիսկրետություն – ալգորիթմը պետք է իրենից ներկայացնի պարզ քայլերի հաջորդականություն, որոնք կբերեն որևէ խնդրի լուծմանը։ Միևնույն ժամանակ, ալգորիթմի յուրաքանչյուր քայլի կատարման ժամանակը սահմանափակ է։
  • Որոշվածություն – ցանկացած պահի հաջորդ քայլը հստակ որոշվում է կախված համակարգի իրավիճակից։ Այսպիսով, ալգորիթմը տալիս է նույն պատասխանը նույն սկզբնական տվյալների համար։ Հնարավոր է նաև, որ հաջորդ քայլը կախված լինի այդ պահին ընտրված պատահական թվից։
  • Հասկանալի լինել – ալգորիթմը պետք է ներառի միայն կատարողին հասկանալի և նրա տվյալների մեջ առկա գործողություններ։
  • Վերջավորություն – ճիշտ տրված սկզբնական տվյալների դեպքում, ալգորիթմը պետք է վերջավոր քանակի քայլերից հետո տա ճիշտ պատասխանը։
  • Ունիվերսալություն – ալգորիթմը պետք է կատարի իր ֆունկցիան ցանկացած թույլատրելի սկզբնական տվյալներ տալու դեպքում։
  • Արդյունավետություն – որոշակի արդյունքների ստացում։
  • Ալգորիթմը պարունակում է սխալներ, եթե արդյունքը սխալ է, կամ արդյունք չկա ընդհանրապես։
  • Ալգորիթմը չի պարունակում սխալներ, եթե տալիս է ճշմարիտ արդյունք։

Աղբյուր՝ hy.wikipedia.org

Ձեզ նույնպես կարող է դուր գալ