User Tools

Site Tools


java:jfc_algorithms

This is an old revision of the document!


Αλγόριθμοι

Οι βασικοί αλγόριθμοι του JFC υλοποιούνται στην κλάση Collections.

Sort.java
import java.util.*;
 
public class Sort {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        Collections.sort(list);
        System.out.println(list);
    }
}
  • shuffling: Ανακατεύει στα στοιχεία της λίστας σε τυχαία σειρά.
Shuffle.java
import java.util.*;
 
public class Shuffle {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        Collections.shuffle(list);
        System.out.println(list);
    }
}
  • reverse: Αντιστρέφει στα στοιχεία της λίστας.
Reverse.java
import java.util.*;
 
public class Reverse {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        Collections.reverse(list);
        System.out.println(list);
    }
}
  • fill: Γεμίζει όλα τα στοιχεία της λίστας με ένα συγκεκριμένο στοιχείο.
Fill.java
import java.util.*;
 
public class Fill {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        System.out.println("List elements before fill: "+list);
        Collections.fill(list,"HelloWorld!");
        System.out.println("List elements after fill: "+list);    
    }
}
  • copy: Αντιγράφει την μία λίστα πάνω στην άλλη, με την προϋπόθεση ότι η λίστα προορισμού έχει περισσότερα στοιχεία από την λίστα που θα αντιγραφεί.
Copy.java
import java.util.*;
 
public class Copy {
  public static void main(String args[]) {
    // create two lists  
    List<String> srclst = new ArrayList<String>(5);
    List<String> destlst = new ArrayList<String>(10);
 
    // populate two lists
    srclst.add("Java");
    srclst.add("is");
    srclst.add("best");
 
    destlst.add("C++");
    destlst.add("is");
    destlst.add("older");
    destlst.add("and");
    destlst.add("fast!");    
 
    // copy into dest list
    Collections.copy(destlst, srclst);      
 
    System.out.println("Value of source list: "+srclst);
    System.out.println("Value of destination list: "+destlst);
  }
}
  • swap: Αντιμεταθέτει τα στοιχεία μεταξύ δύο θέσεων της λίστας.
Swap.java
import java.util.*;
 
public class Swap {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        System.out.println("List elements before swap: "+list);
        Collections.swap(list, 0, 2);
        System.out.println("List elements after swap: "+list);    
    }
}
  • addAll: Προσθέτει επιπλέον στοιχεία στη λίστα
addAll.java
import java.util.*;
 
public class AddAll {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        Collections.addAll(list, "how", "are", "you?");
        System.out.println(list);    
    }
}
  • frequency: Δηλώνει πόσες φορές εμφανίζεται ένα στοιχείο στην λίστα.
Frequency.java
import java.util.*;
 
public class Frequency {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        int testFreq = Collections.frequency(list, "test");
        System.out.println("\"test\" appears "+testFreq+" times");
    }
}
  • min:
  • max:
MinMax.java
import java.util.*;
 
public class MinMax {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
 
        System.out.println("Min value: "+Collections.min(list,null)+" | Max value: "+Collections.max(list,null) );
    }
}
Προηγούμενο: SortedSet και SortedMap Περιεχόμενα Επόμενο: java
java/jfc_algorithms.1490746335.txt.gz · Last modified: 2017/03/28 23:12 (external edit)