Junior — Middle
Ինչպե՞ս կարելի է անհատականացվող տարրերը հեռացնել անհատականացվող կոդերով HashSet կամ HashMap օգտագործելով՝ անընդհատ կրկնվող տարրերը ավտոմատ կերպով հեռացնելու համար:
sobes.tech AI
Պատասխան AI-ից
Java-ում անտարբեր ցուցակից կրկնվող տարրերը հեռացնելու համար, դուք կարող եք օգտվել HashSet կամ HashMap տվյալների կառուցվածքների հատկություններից՝ օգտագործելով նրանց յուրահատուկ բանալիների պահպանումը:
- HashSet պահում է միայն յուրահատուկ տարրեր: Երբ ավելացվում են կրկնօրինակները, դրանք ավտոմատ կերպով անտեսվում են:
- HashMap կարելի է օգտագործել, եթե անհրաժեշտ է պահել բանալին-արժեք զույգեր, որտեղ բանալիները յուրահատուկ են:
Օրինակ՝ կրկնվող տարրերը հեռացնելու համար ցուցակից՝ օգտագործելով HashSet:
import java.util.*;
List<String> կրկնվողՑուցակ = Arrays.asList("խնձոր", "բանան", "խնձոր", "նարնջի", "բանան");
// Ստեղծում ենք HashSet ցուցակից — կրկնօրինակները ավտոմատ կերպով կհեռացվեն
Set<String> հավաքածու = new HashSet<>(կրկնվողՑուցակ);
// Եթե անհրաժեշտ է ցուցակ առանց կրկնօրինակների
List<String> առանցԿրկնօրինակների = new ArrayList<>(հավաքածու);
System.out.println(առանցԿրկնօրինակների);
Եթե ուզում եք պահպանել տարրերի կարգը, կարող եք օգտագործել LinkedHashSet:
Set<String> linkedHashSet = new LinkedHashSet<>(կրկնվողՑուցակ);
List<String> կարգավորվածՑուցակ = new ArrayList<>(linkedHashSet);
Այսպիսով, HashSet և HashMap թույլ են տալիս արդյունավետ հեռացնել կրկնօրինակները՝ պահելով յուրահատուկ բանալիները։