അല്ഗൊരിതം
വിക്കിപീഡിയ, ഒരു സ്വതന്ത്ര വിജ്ഞാനകോശം.
ഏതെങ്കിലും ഒരു പ്രശ്നത്തിന്റെ നിര്ദ്ധാരണത്തിന് ഉപയോഗിക്കുന്ന നിശ്ചിതമായ ക്രിയകളുടെ ശ്രേണിയാണ് അല്ഗൊരിതം. സാധാരണ ജീവിതത്തില് നാം ചെയ്യാറുള്ള കാര്യങ്ങള് ചെയ്യാനാവശ്യമായ ക്രിയകളെ സൂചിപ്പിക്കാന് ഈ പദം ഉപയോഗിക്കാം. ഉദാഹരണമായി, പാചകവിധി ഒരു അല്ഗൊരിതമാണ്. എങ്കിലും ഗണിതം, കംപ്യൂട്ടര് സയന്സ് എന്നിവയിലെ പ്രശ്നനിര്ദ്ധാരണരീതിയാണ് സാധാരണയായി ഈ പദം കൊണ്ട് വിവക്ഷ.
ഇന്ത്യന് ഗണിതശാസ്ത്രത്തെ അറബ് ലോകത്തും അങ്ങനെ പാശ്ചാത്യലോകത്തും എത്തിക്കുന്നതില് പ്രധാന പങ്കു വഹിച്ച പേര്ഷ്യന് ജ്യോതിശാസ്ത്രജ്ഞനും ഗണിതശാസ്ത്രജ്ഞനുമായ ഇബ്നു മൂസ അല്-ഖ്വാരിഥ്മിയുടെ പേരില് നിന്നാണ് അല്ഗൊരിതം എന്ന വാക്കിന്റെ ഉദ്ഭവം.
ഉള്ളടക്കം |
[തിരുത്തുക] ഗണനപരമായ സങ്കീര്ണ്ണത
ഒരു അല്ഗൊരിതം പൂര്ത്തിയാകാനെടുക്കുന്ന സമയത്തിന്റെ അളവുകോലാണ് അതിന്റെ ഗണനപരമായ സങ്കീര്ണ്ണത (Computational complexity). ഗണനപരമായ സങ്കീര്ണ്ണത കുറഞ്ഞ അല്ഗൊരിതങ്ങളാണ് കുറവ് സമയം കൊണ്ട് പൂര്ത്തിയാകുക. ഉദാഹരണമായി, സംഖ്യകളെ ഊര്ദ്ധ്വശ്രേണിയില് ക്രമീകരിക്കാനുപയോഗിക്കുന്ന അല്ഗൊരിതങ്ങളാണ് ബബിള് സോര്ട്ട്, മെര്ജ് സോര്ട്ട് എന്നിവ. ഇവയില് ബബിള് സോര്ട്ടിന്റെ ഗണനപരമായ സങ്കീര്ണ്ണത O(N2) ഉം മെര്ജ് സോര്ട്ടിന്റേത്
ആണ്. ഗണനപരമായ സങ്കീര്ണ്ണത കുറഞ്ഞ മെര്ജ് സോര്ട്ട് ആണ് കൂടുതല് വേഗത്തില് സംഖ്യകളെ ക്രമീകരിക്കുക.
[തിരുത്തുക] ഫ്ലോചാര്ട്ട്
ഒരു അല്ഗൊരിതത്തിലെ ഘട്ടങ്ങളും തീരുമാനപ്രക്രിയകളും ചിത്രീകരിക്കാന് ഫ്ലോചാര്ട്ട് ഉപയോഗിക്കാം. അല്ഗൊരിതത്തിലെ ഘട്ടങ്ങള് ബോക്സുകളായും ഒരു ഘട്ടത്തില് നിന്ന് മറ്റൊരു ഘട്ടത്തിലേക്കുള്ള നീക്കങ്ങള് ശരചിഹ്നങ്ങളായുമാണ് ചിത്രീകരിക്കുക. അല്ഗൊരിതം എളുപ്പത്തില് മനസ്സിലാക്കാന് ഇത് സഹായിക്കുന്നു. എങ്കിലും സങ്കീര്ണ്ണമായതും ഏറെ ഘട്ടങ്ങളും തീരുമാനപ്രക്രിയകളുള്ളതുമായ അല്ഗൊരിതങ്ങളെ ചിത്രീകരിക്കാന് ഇവ അപര്യാപ്തമാണ്.
[തിരുത്തുക] സ്യൂഡോകോഡ്
ഒരു പ്രത്യേക പ്രോഗ്രാമിംഗ് ഭാഷ ഉപയോഗിക്കാതെയുള്ള അല്ഗൊരിതത്തിന്റെ വിശദീകരണമാണ് സ്യൂഡോകോഡ്. ഇത് കംപ്യൂട്ടര് ഉപയോഗത്തിനല്ല - വായിക്കുന്നവര്ക്ക് അല്ഗൊരിതം മനസ്സിലാകാനാണ് ഉപയോഗിക്കുക
[തിരുത്തുക] ഉദാഹരണം
a,b,c എന്നീ സംഖ്യകളില് ഏറ്റവും വലുത് ഏത് എന്ന് കണ്ടെത്താനുള്ള അല്ഗൊരിതത്തിന്റെ സ്യൂഡോകോഡ്
1. b ആണ് a യെക്കാള് വലുത് എങ്കില് പടി 5 ലേക്ക് പോകുക 2. c ആണ് a യെക്കാള് വലുത് എങ്കില് പടി 8 ലേക്ക് പോകുക 3. a ആണ് ഏറ്റവും വലുത് 4. നിര്ത്തുക 5. c ആണ് b യെക്കാള് വലുത് എങ്കില് പടി 8 ലേക്ക് പോകുക 6. b ആണ് ഏറ്റവും വലുത് 7. നിര്ത്തുക 8. c ആണ് ഏറ്റവും വലുത് 9. നിര്ത്തുക