അൽഗൊരിതം

വിക്കിപീഡിയ, ഒരു സ്വതന്ത്ര വിജ്ഞാനകോശം.
അൽഗൊരിതം ചിത്രീകരിക്കാൻ ഫ്ലോചാർട്ട് ഉപയോഗിക്കാം

ഏതെങ്കിലും ഒരു പ്രശ്നത്തിന്റെ നിർദ്ധാരണത്തിന്‌ ഉപയോഗിക്കുന്ന നിശ്ചിതമായ ക്രിയകളുടെ ശ്രേണിയാണ്‌ അൽഗൊരിതം. സാധാരണ ജീവിതത്തിൽ നാം ചെയ്യാറുള്ള കാര്യങ്ങൾ ചെയ്യാനാവശ്യമായ ക്രിയകളെ സൂചിപ്പിക്കാൻ ഈ പദം ഉപയോഗിക്കാം. ഉദാഹരണമായി, പാചകവിധി ഒരു അൽഗൊരിതമാണ്‌. എങ്കിലും ഗണിതം, കംപ്യുട്ടർ ശാസ്ത്രം എന്നിവയിലെ പ്രശ്നനിർദ്ധാരണരീതിയാണ്‌ സാധാരണയായി ഈ പദം കൊണ്ട് വിവക്ഷ.

ഇന്ത്യൻ ഗണിതശാസ്ത്രത്തെ അറബ് ലോകത്തും അങ്ങനെ പാശ്ചാത്യലോകത്തും എത്തിക്കുന്നതിൽ പ്രധാന പങ്കു വഹിച്ച പേർഷ്യൻ ജ്യോതിശാസ്ത്രജ്ഞനും ഗണിതശാസ്ത്രജ്ഞനുമായ ഇബ്‌നു മൂസ അൽ-ഖ്വാരിഥ്‌മിയുടെ പേരിൽ നിന്നാണ്‌ അൽഗൊരിതം എന്ന വാക്കിന്റെ ഉദ്ഭവം[അവലംബം ആവശ്യമാണ്]. ഇതിനെ മലയാളത്തിൽ ക്രിയാക്രമം എന്നും വിശേഷിപ്പിക്കാവുന്നതാണ്.

ഗണനപരമായ സങ്കീർണ്ണത[തിരുത്തുക]

ഒരു അൽഗൊരിതം പൂർത്തിയാകാനെടുക്കുന്ന സമയത്തിന്റെ അളവുകോലാണ്‌ അതിന്റെ ഗണനപരമായ സങ്കീർണ്ണത (Computational complexity). ഗണനപരമായ സങ്കീർണ്ണത കുറഞ്ഞ അൽഗൊരിതങ്ങളാണ്‌ കുറവ് സമയം കൊണ്ട് പൂർത്തിയാകുക. ഉദാഹരണമായി, സംഖ്യകളെ ഊർദ്ധ്വശ്രേണിയിൽ ക്രമീകരിക്കാനുപയോഗിക്കുന്ന അൽഗൊരിതങ്ങളാണ്‌ ബബിൾ സോർട്ട്, മെർജ് സോർട്ട് എന്നിവ. ഇവയിൽ ബബിൾ സോർട്ടിന്റെ ഗണനപരമായ സങ്കീർണ്ണത O(N^2) ഉം മെർജ് സോർട്ടിന്റേത് O(N\times \log N) ആണ്‌. ഗണനപരമായ സങ്കീർണ്ണത കുറഞ്ഞ മെർജ് സോർട്ട് ആണ്‌ കൂടുതൽ വേഗത്തിൽ സംഖ്യകളെ ക്രമീകരിക്കുക.

ഫ്ലോചാർട്ട്[തിരുത്തുക]

അൽഗോരിതത്തിന്റെ ചിത്രരൂപത്തിലുള്ള പ്രതിനിധാനമാണ് ഫ്ലോചാർട്ട്.അൽഗൊരിതത്തിലെ ഘട്ടങ്ങളും തീരുമാനപ്രക്രിയകളും ചിത്രീകരിക്കാൻ ഫ്ലോചാർട്ട് ഉപയോഗിക്കാം. അൽഗൊരിതത്തിലെ ഘട്ടങ്ങൾ ബോക്സുകളായും ഒരു ഘട്ടത്തിൽ നിന്ന് മറ്റൊരു ഘട്ടത്തിലേക്കുള്ള നീക്കങ്ങൾ ശരചിഹ്നങ്ങളായുമാണ്‌ ചിത്രീകരിക്കുക. എളുപ്പത്തിൽ അൽഗൊരിതം മനസ്സിലാക്കാൻ ഇത് സഹായിക്കുന്നു. എങ്കിലും സങ്കീർണ്ണമായതും ഏറെ ഘട്ടങ്ങളും തീരുമാനപ്രക്രിയകളുള്ളതുമായ അൽഗൊരിതങ്ങളെ ചിത്രീകരിക്കാൻ ഇവ അപര്യാപ്തമാണ്‌.

സ്യൂഡോകോഡ്[തിരുത്തുക]

ഒരു പ്രത്യേക പ്രോഗ്രാമിംഗ് ഭാഷ ഉപയോഗിക്കാതെയുള്ള അൽഗൊരിതത്തിന്റെ വിശദീകരണമാണ്‌ സ്യൂഡോകോഡ്. ഇത് കം‌പ്യൂട്ടർ ഉപയോഗത്തിനല്ല - വായിക്കുന്നവർക്ക് അൽഗൊരിതം മനസ്സിലാകാനാണ്‌ ഉപയോഗിക്കുക

ഉദാഹരണം[തിരുത്തുക]

a,b,c എന്നീ സംഖ്യകളിൽ ഏറ്റവും വലുത് ഏത് എന്ന് കണ്ടെത്താനുള്ള അൽഗൊരിതത്തിന്റെ സ്യൂഡോകോഡ്

1. b ആണ്‌ a യെക്കാൾ വലുത് എങ്കിൽ പടി  5 ലേക്ക് പോകുക
2. c ആണ്‌ a യെക്കാൾ വലുത് എങ്കിൽ പടി  8 ലേക്ക് പോകുക
3. a ആണ്‌ ഏറ്റവും വലുത്
4. നിർത്തുക
5. c ആണ്‌ b യെക്കാൾ വലുത് എങ്കിൽ പടി  8 ലേക്ക് പോകുക
6. b ആണ്‌ ഏറ്റവും വലുത്
7. നിർത്തുക
8. c ആണ്‌ ഏറ്റവും വലുത്
9. നിർത്തുക
"http://ml.wikipedia.org/w/index.php?title=അൽഗൊരിതം&oldid=1824998" എന്ന താളിൽനിന്നു ശേഖരിച്ചത്