Junior — Middle
Կա արդյոք իրականացված տվյալների կառուցվածք, որը համատեղում է հեշ-թերթի և տարրերի կարգի հատկությունները?
sobes.tech AI
Պատասխան AI-ից
Այո, նման տվյալների կառուցվածք գոյություն ունի։ Java և Android-ում դա է LinkedHashSet դասը, որը համատեղում է հեշ-թերթի հատկությունները և պահպանում է տարրերի ավելացման կարգը։
LinkedHashSet-ը պահպանում է տարրերը որպես յուրահատուկ (ինչպես HashSet-ը) և միաժամանակ պահպանում է նրանց ավելացման կարգը, ինչը թույլ է տալիս անցնել տարրերի վրա նույն կարգով։
Օգտագործման օրինակ՝
LinkedHashSet<String> linkedSet = new LinkedHashSet<>();
linkedSet.add("one");
linkedSet.add("two");
linkedSet.add("three");
for (String s : linkedSet) {
System.out.println(s); // Տպում է՝ one, two, three
}
Եթե անհրաժեշտ է բնական կարգով դասավորություն, կարելի է օգտագործել TreeSet, բայց այն հիմնված չէ հեշ-թերթի վրա։