அத்தியாயம் 27

சிக்கலானது (Complexity)

முந்தைய அத்தியாயத்திலிருந்து ஒரு அல்காரிதத்தை எவ்வாறு உருவாக்குவது என்பதை நீங்கள் புரிந்துகொண்டிருக்க வேண்டும். இந்த அத்தியாயத்தில், ஜாவாஸ்கிரிப்டில் அல்காரிதமிக் சிக்கலின் (algorithmic complexity) நுணுக்கங்களை (intricacies) ஆராய்வோம்.

ஒரு அல்காரிதத்தை வடிவமைக்கும்போது, சரியான வெளியீட்டை (output) அடைவது மட்டுமல்ல; அந்த முடிவை எவ்வளவு திறமையாக (efficiently) அடைகிறோம் என்பது பற்றியதுமாகும். பல அல்காரிதம்கள் ஒரு சிக்கலைத் தீர்க்க முடியும் என்பதால், மிகவும் திறமையான தீர்வைக் கண்டுபிடிப்பது கட்டாயமாகும். கணினி அறிவியலில் (computer science), ஒரு அல்காரிதத்தின் செயல்திறனை இரண்டு முதன்மை பரிமாணங்களில் பகுப்பாய்வு செய்யலாம்: நேரம் (time) மற்றும் இடம் (space).

ஒரு அல்காரிதத்தின் சிக்கலைப் பகுப்பாய்வு செய்வது ஒரு நடைமுறைத் தேவையே தவிர ஒரு தத்துவார்த்தக் கருத்து (theoretical concept) மட்டுமல்ல. உகந்த அல்காரிதத்தின் சில நன்மைகள் வேகமான செயல்திறன் (faster performance), வளப் பாதுகாப்பு (resource conservation) மற்றும் மேம்பட்ட பயனர் அனுபவம் (improved user experience) ஆகியவை ஆகும்.

ஒரு உதாரணத்தை எடுத்துக்கொள்வோம்:

function printElement(arr){
    for (let i=0; i<arr.length; t++){
        console.log(arr[i])
    }
}

மேலே உள்ள அல்காரிதத்தின் நேரச் சிக்கலானது (Time complexity): O(n)

மேலே உள்ள அல்காரிதத்தின் இடச் சிக்கலானது (Space complexity): O(1)

இது தற்போது உங்களுக்குப் பழக்கமில்லாததாகத் தோன்றலாம் என்றாலும், நீங்கள் வரவிருக்கும் அத்தியாயங்களில் முன்னேறும்போது, இந்த மதிப்புகள் அனைத்தையும் நீங்கள் தெளிவாகப் புரிந்துகொள்ளத் தொடங்குவீர்கள்.

இந்த அத்தியாயத்தில், பின்வரும் தலைப்புகளை ஆராய்வோம்:

results matching ""

    No results matching ""