User Tools

Site Tools


java:jfc_intf_set

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
java:jfc_intf_set [2015/03/17 13:35]
gthanos
java:jfc_intf_set [2021/05/22 03:01]
Line 1: Line 1:
-====== java.util.Set ====== 
- 
-Το //Set// είναι ένα Collection το οποίο δεν επιτρέπει διπλές εγγραφές. Δείτε το παρακάτω παράδειγμα κώδικα 
- 
-<code java FindDups2.java> 
-public class FindDups2 { 
-  public static void main(String[] args) { 
-    Set<String> uniques = new HashSet<String>(); 
-    Set<String> dups    = new HashSet<String>(); 
- 
-    for (String a : args) 
-      if (!uniques.add(a)) 
-        dups.add(a); 
- 
-    // Destructive set-difference 
-    uniques.removeAll(dups); 
- 
-    System.out.println("Unique words:    " + uniques); 
-    System.out.println("Duplicate words: " + dups); 
-  } 
-} 
-</code> 
-Ένα ενδεικτικό τρέξιμο είναι το παρακάτω 
-<code> 
-$> java FindDups2 me you me he he her see me you 
-Unique words:    [see, her] 
-Duplicate words: [you, me, he] 
-</code> 
- 
-===== Υλοποιήσεις ===== 
- 
- 
-Βασικές υλοποιήσεις του [[https://docs.oracle.com/javase/7/docs/api/java/util/Set.html|Set]] interface είναι οι παρακάτω: 
-  * **[[https://docs.oracle.com/javase/7/docs/api/java/util/HashSet.html|HashSet]]:** Υλοποιεί το Set μέσα από ένα HashTable. Γρήγορο στην αναζήτηση. Δεν εγγυάται ότι η σειρά διάτρεξης είναι η σειρά με την οποία εισάγαμε τα δεδομένα. Απαιτεί κατά κανόνα περισσότερο χώρο αποθήκευσης από τον στοιχεία που περιέχει το Set. 
-  * **[[https://docs.oracle.com/javase/7/docs/api/java/util/TreeSet.html|TreeSet]]:** Υλοποιεί το Set μέσα από ένα [[http://en.wikipedia.org/wiki/Red%E2%80%93black_tree|Red-Black tree]]. Πιο αργό στην αναζήτηση. Δεν εγγυάται ότι η σειρά διάτρεξης είναι η σειρά με την οποία εισάγαμε τα δεδομένα. Η σειρά διάτρεξης είναι η σειρά κατάταξης των στοιχείων (υλοποιεί τον interface SorteSet). 
-  * **[[https://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashSet.html|LinkedHashSet]]:** Υλοποιεί το Set μέσα από ένα HashTable με παράλληλη χρήση διπλά διασυνδεδεομένης λίστας. Γρήγορο στην αναζήτηση. Εγγυάται ότι η σειρά διάτρεξης είναι η σειρά με την οποία εισάγαμε τα δεδομένα, λόγω της ύπαρξης της λίστας. Απαιτεί κατά κανόνα περισσότερο χώρο αποθήκευσης από τον στοιχεία που περιέχει το Set. 
  
java/jfc_intf_set.txt · Last modified: 2021/05/22 03:01 (external edit)