ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-23, Thursday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

ඇරේවලට පිටුපස Vector, Map, Set භාවිතය – C++ වැඩිදියුණු කරගන්න

ඇරේවලට පිටුපස Vector, Map, Set භාවිතය – C++ වැඩිදියුණු කරගන්න

ඇරේ (array) යනු C++ දැනුම අරඹන කාලයේ බොහෝ මොහොතකම පළමු විසඳුම වුණා. "බහු දත්ත ගබඩා කරන්න" කියලා හිතලා ඉන්ටෙජර් ඇරේ එකක් හදලා පටන් ගත්තා. නමුත් STL (Standard Template Library) කන්ටේනර්ස් හඳුනුවේ පසු, ඒක තරමක් අධික වැඩක් බවක් අපට පෙනෙන්න ආරම්භ වුණා.

ඉතින් දැන් කුමක් කරන්නේද? ඇරේවලට පරිවර්තනය කරලා vector, map, set වැනි කන්ටේනර්ස් භාවිතා කිරීමයි. මෙය කේතය කෙටි කරලා, දෝෂ අවදානම අඩු කරලා, වැඩි දත්ත ප්‍රමාණයක් සමඟත් සාර්ථකව ක්‍රියා කරයි.

vector – අංකිත ලැයිස්තු සඳහා නව මූලිකය. එය ස්වයංක්‍රීයව වර්ධනය වෙයි, ගැලපුම් (shrink) වෙයි, තමාගේ දිග (size) දැනගන්න පුළුවන්. map – යතුර (key) මත අගය (value) සොයාගැනීමට හොඳයි; නාමය, අයිඩී, ඕනෑම වර්ගයක් යතුරක් විය හැක. unordered_map – hash table මත පදනම්ව, සාමාන්‍යයෙන් O(1) වේගයකින් සොයාගත හැක. set – අද්විතීය (unique) අගයන් තබා, ඒවා ස්වයංක්‍රීයව සකස් කරයි; unordered_set එහි වේගවත් රූපය.

කන්ටේනර් තෝරන සරල නියමයක්:

  • අංකිත ස්ථාන (0,1,2…) භාවිතා කරනවා නම් – vector
  • අංක නොවන යතුරක් (නම, අයිඩී) මත සොයාගත අවශ්‍ය නම් – unordered_map
  • යතුරු සකස් කරලා (sorted) පෙන්වන්න ඕන නම් – map
  • “මට මේ අගය තිබේද?” කියලා පරීක්ෂා කරන්න නම් – unordered_set
  • අද්විතීය අගයන් සකස් කරලා (sorted) තබන්න නම් – set

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ විශ්වවිද්‍යාල සිසුන්, තාක්ෂණික ආරම්භකයින්, ව්‍යාපාරිකයින්ට මෙය විශාල වාසියක්. ඇරේ භාවිතය සමඟ පණිවිඩ (bug) ගණන ඉහල යාම නිසා, වැඩි කාලයක් නවීන ලයිබ්‍රරි හෝ API සමඟ ඒකාබද්ධ කිරීමේදී වැය වේ. Vector, Map, Set භාවිතා කිරීමෙන් කේතය තෙරුවන්ගත කරලා, පරීක්ෂණ (testing) කාලය අඩු කරලා, පණිවිඩ හඳුනාගැනීම පහසු කරයි. තවත් වැදගත් කරුණක් නම්, මේ කන්ටේනර්ස් C++11 පසු ආරම්භ වූ බොහෝ ලොකු ව්‍යාපාරික පද්ධති (banking, telecom) වලත් භාවිතා වේ. ඒ නිසා දේශීය සංවර්ධකයින්ට ජාත්‍යන්තර මට්ටමේ කේත පරම්පරාවට අනුගත වීමට අවස්ථාව ලැබේ.

අවසන් වශයෙන්, තවත් එක් ඇරේ එකක් ලියන්න හිතාගන්නවා නම්, පළමුව vector හෝ map භාවිතා කරලා බලන්න. ඔබේ කේතය ලේසි, වේගවත්, පවත්වාගත හැකි බවක් අත්දැකීමෙන් පසුව, අධික සංකීර්ණ data structures ගැන අධ්‍යයනයට හැරෙන්න.

💡 ඔබේ කේතය Vector, Map, Set සමඟ නව තලයකට ගෙන යන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#C++ #STL #Vector #Map #Set