ቁልፍ ልዩነት – TreeSet vs TreeMap
አደራደር አንድ አይነት የውሂብ ክፍሎችን ለማከማቸት ይጠቅማል። አብዛኞቹ የፕሮግራሚንግ ቋንቋዎች Arraysን ይደግፋሉ። ምንም እንኳን ድርድር ብዙ እሴቶችን ሊያከማች ቢችልም; ትልቅ ኪሳራ አለ። ድርድር ከተፈጠረ በኋላ መለወጥ አይቻልም. ፕሮግራም አድራጊው የ10 ንጥረ ነገሮችን ስብስብ ካወጀ 15 ንጥረ ነገሮችን ማከማቸት አይችልም። ፕሮግራም አውጪው የ10 ኤለመንቶችን ድርድር ሲያውጅ እና 5 ኤለመንቶችን ብቻ ሲያከማች ቀሪው የተመደበው ማህደረ ትውስታ ብክነት ነው። እንደ ጃቫ ያሉ ፕሮግራሚንግ ቋንቋዎች የውሂብ ክፍሎችን በተለዋዋጭ ለማከማቸት ስብስቦች አሏቸው። በርካታ ስብስቦች አሉ. ክምችቶች መጨመር, ማስወገድ እና ሌሎች ስራዎችን ለማከናወን ይረዳሉ.የመሠረት በይነገጽ ስብስብ በመባል ይታወቃል. አዘጋጅ፣ ዝርዝር እና ወረፋ የስብስብ በይነገጽን የሚያራዝሙ አንዳንድ በይነገጾች ናቸው። ካርታ የስብስብ ተዋረድ በይነገጽ ነው፣ ግን የስብስብ በይነገጽን አያራዝምም። TreeSet የ Set በይነገጽን የሚተገበር እና ንጥረ ነገሮቹን ወደ ላይ በቅደም ተከተል የሚያከማች ክፍል ነው። TreeMap የካርታ በይነገጽን የሚተገበር እና ቁልፉን፣ ጥንድ እሴትን በቅደም ተከተል የሚያከማች ክፍል ነው። ዋናው ልዩነት ያ ነው። ይህ መጣጥፍ በTreeSet እና TreeMap መካከል ያለውን ልዩነት ያብራራል።
TreeSet ምንድን ነው?
The TreeSet Set በይነገጽን ተግባራዊ የሚያደርግ ክፍል ነው። TreeSet ልዩ ንጥረ ነገሮችን ይይዛል። TreeSet NavigableSet በይነገጽን ተግባራዊ ያደርጋል። Navigable በይነገጹ የተደረደሩ አዘጋጅ፣ አዘጋጅ፣ ስብስብ እና ሊተላለፉ የሚችሉ በይነገጾችን በተዋረድ ቅደም ተከተል ያራዝመዋል። TreeSet ኤለመንቶችን በከፍታ ቅደም ተከተል ያከማቻል። የማስገባቱ ቅደም ተከተል A፣ C፣ B ከሆነ፣ TreeSet እንደ A፣ B፣ C ያስቀምጣቸዋል። የTreeSet ዘዴዎች አሉ። የመደመር ዘዴው አንድን አካል ወደ ስብስቡ ለመጨመር ያገለግላል።የማስወገጃ ዘዴው የተወሰነውን አካል ለማስወገድ ይጠቅማል. ግልጽ የሆነው ዘዴ ሁሉንም ንጥረ ነገሮች ለማስወገድ ያገለግላል. የተገለጸው አካል በስብስቡ ውስጥ ካለ የያዘው ዘዴ እውነትን ይመልሳል። በTreeSet የቀረቡ አንዳንድ ዘዴዎች ናቸው። ከታች ያለውን ፕሮግራም ይመልከቱ።
ስእል 01፡ TreeSetን የሚጠቀም ፕሮግራም
ከላይ ባለው ፕሮግራም መሰረት Treeset TreeSet አይነት ነገር ነው። Strings ማከማቸት ይችላል። ንጥረ ነገሮቹ የሚጨመሩት የመደመር ዘዴን በመጠቀም ነው። የማስገቢያ ቅደም ተከተል A, C, D እና B ነው. ተደጋጋሚውን በመጠቀም የተቀመጡት ዋጋዎች በማያ ገጹ ላይ ታትመዋል. ንጥረ ነገሮቹ በቅደም ተከተል A, B, C, D ውስጥ ይከማቻሉ. ስለዚህ, TreeSet የስብስብ አካላትን ወደ ላይ ከፍ ያለ ቅደም ተከተል ይይዛል. እንደ “D” ሌላ አካል ካለ አይታተምም ምክንያቱም ኤለመንቱ D አስቀድሞ በስብስብ ውስጥ አለ። ሁልጊዜ ልዩ ንጥረ ነገሮችን ያከማቻል.
TreeMap ምንድን ነው?
TreeMap የካርታ በይነገጽን ተግባራዊ የሚያደርግ ክፍል ነው። ካርታ ቁልፍ-እሴት ጥንዶችን ይደግፋል። እያንዳንዱ ቁልፍ፣ የእሴት ጥንድ ግቤት ነው። እያንዳንዱ ቁልፍ ልዩ ነው እና ተመጣጣኝ ዋጋ አለው። የይዘቱ ቁልፍ ዘዴ አንድን የተወሰነ ቁልፍ ለማግኘት የሚያገለግል ሲሆን የእሴት ዘዴ ደግሞ የተወሰነ እሴት ለማግኘት ይጠቅማል። የማግኘት ዘዴው ከተሰጠው ቁልፍ ጋር የሚዛመደውን ዋጋ ለማግኘት ይጠቅማል። የተቀመጠው ዘዴ በተሰጠው ቁልፍ ዋጋን ለማከማቸት ይጠቅማል. በተጨማሪም የማስወገጃ ዘዴን በመጠቀም አንድን የተወሰነ ቁልፍ በአንድ የተወሰነ ቁልፍ ላይ ማስወገድ ይቻላል. እነዚህ አንዳንድ የተለመዱ የካርታ በይነገጽ ዘዴዎች ናቸው። ቁልፉን መሰረት አድርጎ ለመፈለግ, ለማስገባት እና ለመሰረዝ ይረዳል. TreeMap ክፍል NavigableMapን ተግባራዊ ያደርጋል። NavigableMap የተደረደረ ካርታን ያራዝመዋል። የተደረደረ ካርታ ካርታን ያራዝመዋል። ስለዚህ የካርታውን ዘዴዎች በትሬ ካርታ መጠቀም ይቻላል. ከታች ያለውን ፕሮግራም ይመልከቱ።
ስእል 02፡ TreeMap የሚጠቀም ፕሮግራም
ከላይ ባለው ፕሮግራም መሰረት የTreeMap ነገር ተፈጥሯል። ፕሮግራመር ነገሩን በመጠቀም ንጥረ ነገሮችን መጨመር ይችላል። የማስቀመጫ ዘዴው ቁልፍን ፣ የእሴት ጥንዶችን ለማስገባት ያገለግላል። ኤለመንቶችን ለማምጣት የማግኘት ዘዴው ከተወሰነ ቁልፍ ጋር ጥቅም ላይ ይውላል። ፕሮግራመር ሁሉንም ቁልፎች እና እሴቶች ለማተም Map. Entryን መጠቀም ይችላል። ውጤቱን በሚመለከትበት ጊዜ, የገባውን ቅደም ተከተል አይጠብቅም. ኤለመንቱን በከፍታ ቅደም ተከተል ያከማቻል።
በTreeSet እና TreeMap መካከል ያሉ ተመሳሳይነቶች ምንድን ናቸው?
- ሁለቱም TreeSet እና TreeMap በስብስብ ተዋረድ ውስጥ ናቸው።
- ሁለቱም TreeSet እና TreeMap ወደ ላይ የሚወጣውን ቅደም ተከተል ያስጠብቃሉ።
- ሁለቱም TreeSet እና TreeMap ብዙ ንጥረ ነገሮችን ማከማቸት እና ማቀናበር ይችላሉ።
በTreeSet እና TreeMap መካከል ያለው ልዩነት ምንድን ነው?
TreeSet vs TreeMap |
|
TreeSet የ Set በይነገጽን የሚተገብር እና ንጥረ ነገሮቹን በቅደም ተከተል የሚያከማች ክፍል ነው። | TreeMap የካርታ በይነገጽን የሚተገብር እና ቁልፉን፣ ጥንድ እሴትን በከፍታ ቅደም ተከተል የሚያከማች ክፍል ነው። |
የተተገበረ በይነገጽ | |
TreeSet የበይነገጽ አዘጋጅን ተግባራዊ ያደርጋል። | TreeMap የካርታ በይነገጽን ተግባራዊ ያደርጋል። |
ማጠቃለያ – TreeSet vs TreeMap
አደራደር የንጥረ ነገሮችን ስብስብ ለማከማቸት ይጠቅማል፣ነገር ግን አባሎችን በተለዋዋጭ ለማከማቸት አይረዳም። እንደ ጃቫ ያሉ የፕሮግራም አወጣጥ ቋንቋዎች የውሂብ ክፍሎችን በተለዋዋጭ ለማከማቸት ስብስቦችን ይይዛሉ። ስብስብ በስብስብ ተዋረድ ውስጥ መሰረታዊ ክፍል ነው። ክፍሎችን እና ክፍሎችን እንደ መደመር ፣ መሰረዝ ያሉ ስራዎችን ለማከናወን ክፍሎችን እና መገናኛዎችን ያቀፈ ነው። አዘጋጅ እና ካርታ ሁለት የስብስብ ተዋረድ በይነገጾች ናቸው።TreeSet የ Set በይነገጽን ተግባራዊ የሚያደርግ እና ንጥረ ነገሮቹን ወደ ላይ በቅደም ተከተል የሚያከማች ክፍል ነው። TreeMap የካርታ በይነገጽን የሚተገበር እና ቁልፉን፣ ጥንድ እሴትን በቅደም ተከተል የሚያከማች ክፍል ነው። በTreeSet እና TreeMap መካከል ያለው ልዩነት ያ ነው።