info@meetujewelry.com
+86-19924726359 / +86-13431083798
അൽഗോരിതം സങ്കീർണ്ണത പ്രധാനമായും രണ്ട് ഉറവിടങ്ങളെയാണ് അഭിസംബോധന ചെയ്യുന്നത്:
സമയം
(നിർവ്വഹണ കാലയളവ്) കൂടാതെ
സ്ഥലം
(മെമ്മറി ഉപയോഗം). ഇൻപുട്ട് വലുപ്പത്തിനനുസരിച്ച് റൺടൈം എങ്ങനെ വളരുന്നു എന്ന് സമയ സങ്കീർണ്ണത അളക്കുമ്പോൾ (
എൻ
), സ്ഥല സങ്കീർണ്ണത മെമ്മറി ഉപഭോഗം വിലയിരുത്തുന്നു. ഉദാഹരണത്തിന്:
- ഒരു അൽഗോരിതം
ഒ(എൻ)
ഇൻപുട്ട് വലുപ്പത്തിനൊപ്പം സമയ സങ്കീർണ്ണത രേഖീയമായി സ്കെയിലുകൾ ചെയ്യുന്നു.
- ഒരു അൽഗോരിതം
O(1)
ഇൻപുട്ട് വലുപ്പം പരിഗണിക്കാതെ സ്പേസ് സങ്കീർണ്ണത സ്ഥിരമായ മെമ്മറി ഉപയോഗിക്കുന്നു.
രണ്ട് മെട്രിക്സുകളും അത്യാവശ്യമാണ്. വലിയ ഡാറ്റാസെറ്റുകളിൽ, വേഗതയേറിയ അൽഗോരിതം മെമ്മറി തീർക്കാൻ സാധ്യതയുണ്ട്, അതേസമയം മെമ്മറി-കാര്യക്ഷമമായ അൽഗോരിതം തത്സമയ ആപ്ലിക്കേഷനുകൾക്ക് വളരെ മന്ദഗതിയിലായേക്കാം.
കാര്യക്ഷമതയാണ് പ്രായോഗികതയെ നിർണ്ണയിക്കുന്നത്. 10 ദശലക്ഷത്തിന് പകരം 10 ഇനങ്ങളുടെ ഒരു പട്ടിക അടുക്കുന്നത് പരിഗണിക്കുക.:
- A
ബബിൾ സോർട്ടിംഗ്
(
ഒ(എൻ)
) ചെറിയ ഡാറ്റാസെറ്റുകൾക്ക് മതിയാകും, പക്ഷേ വലിയവയ്ക്ക് അപ്രായോഗികമാകും.
- A
ലയിപ്പിക്കൽ അടുക്കൽ
(
O(n ലോഗ് n)
) വലിയ ഡാറ്റാസെറ്റുകൾ ഭംഗിയായി കൈകാര്യം ചെയ്യുന്നു, പക്ഷേ അധിക മെമ്മറി ആവശ്യമാണ്.
അൽഗോരിതങ്ങൾ താരതമ്യം ചെയ്യുന്നതിനും ഹാർഡ്വെയർ-നിർദ്ദിഷ്ട വിശദാംശങ്ങൾ ഒഴിവാക്കുന്നതിനും സങ്കീർണ്ണതാ വിശകലനം ഒരു സാർവത്രിക ഭാഷ നൽകുന്നു. നിർണായക സിസ്റ്റങ്ങളിലെ സ്കേലബിളിറ്റി പ്രവചിക്കാനും തടസ്സങ്ങൾ ഒഴിവാക്കാനും ഇത് ഡെവലപ്പർമാരെ പ്രാപ്തരാക്കുന്നു.
അസിംപ്റ്റോട്ടിക് നൊട്ടേഷനുകൾ ഫംഗ്ഷനുകളുടെ പരിമിത സ്വഭാവത്തെ വിവരിക്കുന്നു, സങ്കീർണ്ണതയ്ക്ക് ഒരു ചുരുക്കെഴുത്ത് വാഗ്ദാനം ചെയ്യുന്നു. മൂന്ന് പ്രാഥമിക നൊട്ടേഷനുകൾ ഇവയാണ്:
ഒരു അൽഗോരിതം എടുക്കുന്ന പരമാവധി സമയമോ സ്ഥലമോ ബിഗ് ഒ നൊട്ടേഷൻ നിർവചിക്കുന്നു. ഉദാഹരണത്തിന്:
-
O(1)
: സ്ഥിരമായ സമയം (ഉദാ: സൂചിക ഉപയോഗിച്ച് ഒരു അറേ എലമെന്റിലേക്ക് പ്രവേശിക്കുന്നു).
-
ഒ(എൻ)
: രേഖീയ സമയം (ഉദാ: ഒരു പട്ടികയിലൂടെ ആവർത്തിക്കൽ).
-
ഒ(എൻ)
: ക്വാഡ്രാറ്റിക് സമയം (ഉദാ. ബബിൾ സോർട്ടിൽ നെസ്റ്റഡ് ലൂപ്പുകൾ).
പ്രകടന പരിധി ഉറപ്പ് നൽകുന്നതിനാൽ ബിഗ് ഒ ആണ് ഏറ്റവും സാധാരണയായി ഉപയോഗിക്കുന്ന മെട്രിക്.
ഒമേഗ ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ സമയം വിവരിക്കുന്നു. ഉദാഹരണത്തിന്:
- ഒരു രേഖീയ തിരയൽ ഉണ്ട്
(1)
ലക്ഷ്യം ആദ്യത്തെ ഘടകമാണെങ്കിൽ.
ശുഭാപ്തിവിശ്വാസം പുലർത്തുന്നുണ്ടെങ്കിലും, ഏറ്റവും മോശം സാഹചര്യ ആസൂത്രണത്തിന് മികച്ച സാഹചര്യ വിശകലനം അത്ര വിവരദായകമല്ല.
തീറ്റ ബിഗ് ഒ, ഒമേഗ എന്നിവ സംയോജിപ്പിച്ച് കൃത്യമായ അസിംപ്റ്റോട്ടിക് സ്വഭാവത്തെ പ്രതിനിധീകരിക്കുന്നു. ഒരു അൽഗോരിതം ബെസ്റ്റ്, മോശം കേസുകൾ ഒന്നുതന്നെയാണെങ്കിൽ:
-
(n ലോഗ് n)
ശരാശരി, ഏറ്റവും മോശം സാഹചര്യങ്ങളുടെ ലയന തരങ്ങൾക്ക് ബാധകമാണ്.
വളർച്ചാ നിരക്കുകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിച്ച്, ഈ നൊട്ടേഷനുകൾ സ്ഥിരാങ്കങ്ങളെയും താഴ്ന്ന ക്രമത്തിലുള്ള പദങ്ങളെയും സംഗ്രഹിക്കുന്നു. ഉദാഹരണത്തിന്, 2n + 3n + 4 ലളിതമാക്കുന്നു ഒ(എൻ) കാരണം വലിയതിന് ക്വാഡ്രാറ്റിക് പദം പ്രബലമാണ് എൻ .
സങ്കീർണ്ണത ക്ലാസുകൾ മനസ്സിലാക്കുന്നത് സ്കേലബിളിറ്റി അനുസരിച്ച് അൽഗോരിതങ്ങളെ വർഗ്ഗീകരിക്കാൻ സഹായിക്കുന്നു. ഏറ്റവും കാര്യക്ഷമത കുറഞ്ഞതു വരെയുള്ള ശ്രേണി ഇതാ.:
എക്സിക്യൂഷൻ സമയം അല്ലെങ്കിൽ മെമ്മറി മാറ്റമില്ലാതെ തുടരുന്നു, കാരണം
എൻ
വളരുന്നു.
-
ഉദാഹരണം
: കീ ഉപയോഗിച്ച് ഒരു ഹാഷ് ടേബിൾ മൂല്യം ആക്സസ് ചെയ്യുന്നു.
റൺടൈം ലോഗരിതം അനുസരിച്ച് വളരുന്നു
എൻ
.
-
ഉദാഹരണം
: ബൈനറി തിരയൽ ഓരോ ആവർത്തനത്തിലും ഇൻപുട്ട് സ്പെയ്സ് പകുതിയാക്കുന്നു.
റൺടൈം ആനുപാതികമായി സ്കെയിലുകൾ
എൻ
.
-
ഉദാഹരണം
: അടുക്കാത്ത പട്ടികയിലൂടെ ലീനിയർ തിരയൽ.
വിഭജിച്ച് കീഴടക്കൽ അൽഗോരിതങ്ങളിൽ സാധാരണമാണ്.
-
ഉദാഹരണം
: അടുക്കലും ഹീപ്പ് അടുക്കും ലയിപ്പിക്കുക.
കൂടുകെട്ടിയ ആവർത്തനങ്ങൾ സ്ഫോടനാത്മകമായ വളർച്ചയിലേക്ക് നയിക്കുന്നു.
-
ഉദാഹരണം
: ബബിൾ സോർട്ടിംഗും സെലക്ഷൻ സോർട്ടിംഗും.
ഓരോ അധിക ഇൻപുട്ടിലും റൺടൈം ഇരട്ടിയാകുന്നു.
-
ഉദാഹരണം
: ഓർമ്മപ്പെടുത്തൽ ഇല്ലാതെ ആവർത്തന ഫിബൊനാച്ചി കണക്കുകൂട്ടൽ.
ക്രമമാറ്റം അടിസ്ഥാനമാക്കിയുള്ള അൽഗോരിതങ്ങൾ.
-
ഉദാഹരണം
: ക്രൂരമായ ബലപ്രയോഗത്തിലൂടെ സഞ്ചരിക്കുന്ന വിൽപ്പനക്കാരന്റെ പ്രശ്നം പരിഹരിക്കുന്നു.
തമ്മിലുള്ള വ്യത്യാസം O(n ലോഗ് n) ഒപ്പം ഒ(എൻ) കഠിനമായി മാറുന്നു എൻ = 10 : ആദ്യത്തേത് മില്ലിസെക്കൻഡുകളിൽ എക്സിക്യൂട്ട് ചെയ്തേക്കാം, രണ്ടാമത്തേതിന് ദിവസങ്ങൾ എടുത്തേക്കാം.
ഇൻപുട്ട് കോൺഫിഗറേഷനുകളെ അടിസ്ഥാനമാക്കി അൽഗോരിതങ്ങൾ വ്യത്യസ്തമായി പ്രവർത്തിക്കുന്നു. എല്ലാ കേസുകളും വിശകലനം ചെയ്യുന്നത് സ്ഥിരത ഉറപ്പാക്കുന്നു:
ഒരു ഡാറ്റാബേസ് ക്വറി ഒപ്റ്റിമൈസർ ഒരു ഹാഷ് ജോയിനിൽ ഒന്ന് തിരഞ്ഞെടുത്തേക്കാം ( ഒ(എൻ + എം) ) നെസ്റ്റഡ് ലൂപ്പ് ജോയിൻ ( ഒ(എൻഎം) ) ഡാറ്റ വിതരണത്തെ അടിസ്ഥാനമാക്കി. പ്രവചനാതീതത അസ്വീകാര്യമായ സുരക്ഷാ-നിർണ്ണായക സംവിധാനങ്ങൾക്ക് (ഉദാഹരണത്തിന്, വ്യോമയാന സോഫ്റ്റ്വെയർ) ഏറ്റവും മോശം സാഹചര്യ വിശകലനം നിർണായകമാണ്.
വ്യത്യസ്ത അൽഗോരിതങ്ങൾ ഉപയോഗിച്ച് ഒരേ പ്രശ്നം പരിഹരിക്കാൻ കഴിയും. ഉദാഹരണത്തിന്, മൂല്യങ്ങളുടെ പട്ടികയിൽ ഒരു ലക്ഷ്യ മൂല്യം തിരയുന്നതിലെ പ്രശ്നം ലീനിയർ തിരയൽ, ബൈനറി തിരയൽ അല്ലെങ്കിൽ ഹാഷ് ടേബിൾ തിരയൽ പോലുള്ള വ്യത്യസ്ത അൽഗോരിതങ്ങൾ ഉപയോഗിച്ച് പരിഹരിക്കാൻ കഴിയും.
ഒരു പട്ടികയിൽ ഒരു ലക്ഷ്യ മൂല്യം തിരയുന്നതിനുള്ള ഈ അൽഗോരിതങ്ങളുടെ സമയ, സ്ഥല സങ്കീർണ്ണതകളെ താഴെയുള്ള പട്ടിക താരതമ്യം ചെയ്യുന്നു. എൻ മൂല്യങ്ങൾ.
അൽഗോരിതം തിരഞ്ഞെടുക്കുന്നത് പ്രശ്നത്തിന്റെ വലുപ്പം, ഇൻപുട്ട് സവിശേഷതകൾ, ലഭ്യമായ ഉറവിടങ്ങൾ എന്നിവയെ ആശ്രയിച്ചിരിക്കുന്നു. ഉദാഹരണത്തിന്, ലിസ്റ്റ് ചെറുതും അടുക്കിയിട്ടില്ലാത്തതുമാണെങ്കിൽ, ലീനിയർ തിരയൽ ആയിരിക്കും ഏറ്റവും നല്ല ചോയ്സ്. ലിസ്റ്റ് വലുതും അടുക്കിയതുമാണെങ്കിൽ, ബൈനറി തിരയൽ ആയിരിക്കും ഏറ്റവും നല്ല ഓപ്ഷൻ. ലിസ്റ്റ് വലുതും അടുക്കിയിട്ടില്ലാത്തതുമാണെങ്കിൽ, ഹാഷ് ടേബിൾ തിരയൽ ആയിരിക്കും ഏറ്റവും നല്ല ചോയ്സ്.
പ്രവർത്തനങ്ങളുടെ ഒരു ശ്രേണിയിലെ ശരാശരി സമയത്തെയാണ് അമോർട്ടൈസ്ഡ് വിശകലനം കണക്കാക്കുന്നത്.
-
ഉദാഹരണം
: ഡൈനാമിക് അറേകൾ നിറയുമ്പോൾ ശേഷി ഇരട്ടിയാക്കുന്നു. സിംഗിൾ ആയിരിക്കുമ്പോൾ
തള്ളുക
ഓപ്പറേഷൻ എടുത്തേക്കാം
ഒ(എൻ)
സമയം, അമോർട്ടൈസ് ചെയ്ത ചെലവ് അവശേഷിക്കുന്നു
O(1)
.
പോലുള്ള അൽഗോരിതങ്ങൾ
മോണ്ടെ കാർലോ
ഒപ്പം
ലാസ് വെഗാസ്
കാര്യക്ഷമതയ്ക്കായി റാൻഡംനെസ് ഉപയോഗിക്കുക.
-
ഉദാഹരണം
: മില്ലർ-റാബിൻ പ്രൈമാലിറ്റി ടെസ്റ്റിന് പ്രോബബിലിസ്റ്റിക് ഗ്യാരണ്ടികൾ ഉണ്ട്, പക്ഷേ ഡിറ്റർമിനിസ്റ്റിക് രീതികളേക്കാൾ വേഗതയേറിയതാണ്.
ചില പ്രശ്നങ്ങൾ (ഉദാ. ബൂളിയൻ സംതൃപ്തി) NP-പൂർണ്ണം , അതായത് അറിയപ്പെടുന്ന ഒരു പോളിനോമിയൽ-ടൈം സൊല്യൂഷനും നിലവിലില്ല. റിഡക്ഷനുകൾ വഴി NP-പൂർണ്ണത തെളിയിക്കുന്നത് കമ്പ്യൂട്ടേഷണൽ കാഠിന്യം തരംതിരിക്കാൻ സഹായിക്കുന്നു.
ഒരു ഒ(എൻ) വലിയ ഡാറ്റാസെറ്റുകൾക്ക് ക്ലസ്റ്ററിംഗ് അൽഗോരിതം ഒരു തടസ്സമായി മാറിയേക്കാം, ഇത് kd മരങ്ങൾ പോലുള്ള ഏകദേശ രീതികളിലേക്ക് മാറാൻ പ്രേരിപ്പിക്കുന്നു ( O(n ലോഗ് n) ).
പബ്ലിക്-കീ സിസ്റ്റങ്ങൾ കാഠിന്യത്തെ ആശ്രയിച്ചിരിക്കുന്നു O(2) ആക്രമണങ്ങളെ ചെറുക്കുന്നതിനുള്ള പ്രശ്നങ്ങൾ (ഉദാ: പൂർണ്ണസംഖ്യ ഘടകീകരണം).
തത്സമയ റെൻഡറിംഗ് എഞ്ചിനുകൾ മുൻഗണന നൽകുന്നു O(1) 60+ FPS നിലനിർത്താൻ ഭൗതികശാസ്ത്ര സിമുലേഷനുകൾക്കുള്ള അൽഗോരിതങ്ങൾ.
ട്രേഡ്-ഓഫ് കാര്യം:
-
സമയം vs. സ്ഥലം
: ഹാഷ് മാപ്പുകൾ ഉപയോഗിക്കുക (
O(1)
ലുക്കപ്പുകൾ) മെമ്മറിയുടെ ചെലവിൽ.
-
ലാളിത്യം vs. ഒപ്റ്റിമലിറ്റി
: ഇൻസേർഷൻ സോർട്ട് (
ഒ(എൻ)
) ചെറുതും ഏതാണ്ട് അടുക്കിയതുമായ ഡാറ്റാസെറ്റുകൾക്ക് അഭികാമ്യമായേക്കാം.
ആവർത്തന അൽഗോരിതങ്ങൾക്ക്, ആവർത്തന ബന്ധ മോഡൽ റൺടൈം. ഉദാഹരണത്തിന്, ലയനം ആവർത്തനം അടുക്കുന്നു:
[ T(n) = 2T(n/2) + O(n) ] പരിഹരിക്കുന്നത്
O(n ലോഗ് n)
വഴി
മാസ്റ്റർ സിദ്ധാന്തം
.
സൈദ്ധാന്തിക വിശകലനത്തിന് പൂരകമായി അനുഭവപരമായ പരിശോധന നടത്തുന്നു. പ്രൊഫൈലിംഗ് ഉപകരണങ്ങൾ (ഉദാ: Valgrind, perf) യഥാർത്ഥ ലോകത്തിലെ തടസ്സങ്ങൾ വെളിപ്പെടുത്തുന്നു.
പെരുമ്പാമ്പ്
ഡെഫ് ലീനിയർ_സം(അർ):
ആകെ = 0
നമ്പറിൽ നമ്പർ:
ആകെ += സംഖ്യ
ആകെ വരുമാനം
ഡെഫ് ക്വാഡ്രാറ്റിക്_സം(arr):
ആകെ = 0
എനിക്ക് വേണ്ടി:
ജെ ഇൻ ആർ:
ആകെ += i * j
ആകെ വരുമാനം
അതേസമയം ഒ(എൻ) സ്ഥിരാങ്കങ്ങളെ അമൂർത്തമാക്കുന്നു, a 100എൻ അൽഗോരിതം a-നേക്കാൾ വേഗത കുറഞ്ഞതായിരിക്കാം 0.01എൻ പ്രായോഗികതയ്ക്കുള്ള അൽഗോരിതം എൻ .
ഒരു O(n ലോഗ് n) അൽഗോരിതം മോശമായി പ്രവർത്തിച്ചേക്കാം ഒ(എൻ) വേണ്ടി എൻ = 10 ഓവർഹെഡ് കാരണം.
ഓർമ്മയിൽ സൂക്ഷിച്ചിരിക്കുന്ന ഒരു ഫിബൊനാച്ചി ഫംഗ്ഷൻ ( ഒ(എൻ) ഒരു ആവർത്തന പതിപ്പിൽ നിന്ന് വ്യത്യസ്തമായി, വലിയ ഇൻപുട്ടുകളിൽ സ്പെയ്സ് ക്രാഷ് ചെയ്തേക്കാം ( O(1) സ്ഥലം).
ഒരു സ്വയം ബാലൻസിങ് BST ( O(ലോഗ് n) തിരയൽ) ഒരു സാധാരണ BST യേക്കാൾ സുരക്ഷിതമാണ് ( ഒ(എൻ) ഏറ്റവും മോശം അവസ്ഥ) വിശ്വസനീയമല്ലാത്ത ഡാറ്റയ്ക്ക്.
കമ്പ്യൂട്ടേഷണൽ കാര്യക്ഷമതയുടെ വിശാലമായ ഭൂപ്രകൃതിയിലൂടെ ഡെവലപ്പർമാരെ നയിക്കുന്ന കോമ്പസാണ് അൽഗോരിതം സങ്കീർണ്ണതാ വിശകലനം. MTSC7196 വിദ്യാർത്ഥികൾക്ക്, ഈ വിഷയത്തിൽ പ്രാവീണ്യം നേടുന്നത് സൈദ്ധാന്തിക പരിജ്ഞാനത്തെയും പ്രായോഗിക വൈദഗ്ധ്യത്തെയും ബന്ധിപ്പിക്കുന്നു. സമയ, സ്ഥല ആവശ്യകതകൾ വിശകലനം ചെയ്യുന്നതിലൂടെയും, അസിംപ്റ്റോട്ടിക് പരിധികൾ താരതമ്യം ചെയ്യുന്നതിലൂടെയും, യഥാർത്ഥ ലോക ട്രേഡ്-ഓഫുകൾ നാവിഗേറ്റ് ചെയ്യുന്നതിലൂടെയും, ഡെവലപ്പർമാർക്ക് മനോഹരമായി സ്കെയിൽ ചെയ്യുന്നതും വിശ്വസനീയമായി പ്രവർത്തിക്കുന്നതുമായ സംവിധാനങ്ങൾ സൃഷ്ടിക്കാൻ കഴിയും.
ഡാറ്റാധിഷ്ഠിത നവീകരണത്താൽ നിർവചിക്കപ്പെട്ട ഒരു യുഗത്തിൽ, ഒരു തമ്മിലുള്ള വ്യത്യാസം തിരിച്ചറിയാനുള്ള കഴിവ് O(n ലോഗ് n) ഒരു ഒ(എൻ) പരിഹാരം എന്നത് വെറും അക്കാദമികമായ ഒരു തന്ത്രപരമായ അനിവാര്യതയല്ല. പഠനത്തിലൂടെ പുരോഗമിക്കുമ്പോൾ, ഓർമ്മിക്കുക: സങ്കീർണ്ണതാ വിശകലനം വെറും സംഖ്യകളെയും ചിഹ്നങ്ങളെയും കുറിച്ചുള്ളതല്ല. കമ്പ്യൂട്ടേഷന്റെ ഹൃദയമിടിപ്പ് മനസ്സിലാക്കുന്നതിനെക്കുറിച്ചാണ്.
2019 മുതൽ, ഗ്വാങ്ഷ ou, ചൈന, ജ്വല്ലറി നിർമ്മാണ അടിത്തറയിൽ യു ആഭരണങ്ങൾ സന്ദർശിച്ചു. ഞങ്ങൾ ഒരു ജ്വല്ലറി എന്റർപ്രൈസ് ഡിസൈൻ, പ്രൊഡക്ഷൻ, വിൽപ്പന എന്നിവയാണ്.
+86-19924726359/+86-13431083798
ഫ്ലോർ 13, വെസ്റ്റ് ടവർ ഓഫ് ഗോം സ്മാർട്ട് സിറ്റി, നമ്പർ. 33 ജ്യൂക്സിൻ സ്ട്രീറ്റ്, ഹൈസു ജില്ല, ഗ്വാങ്ഷ ou, ചൈന.