Sobes.tech
Junior — Middle

Ako sa dá odstrániť opakujúce sa prvky v neusporiadanej zozname pomocou dátových štruktúr HashSet alebo HashMap na automatické odstránenie duplikátov pomocou jedinečných kľúčov?

sobes.tech AI

Odpoveď od AI

Da biste uklonili duplikate iz nesaortirane liste pomoću struktura podataka HashSet ili 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 омогућавају ефикасно уклањање дупликата кроз чување јединствених кључева.