Skip to content

ibrahimalimetin/CollectionFramework_SetInterface

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CollectionFramework_SetInterface

Java - HashSet, LinkedHashSet ve TreeSet

Set Interface ----> HashSet,LinkedHashSet, TreeSet

Set Interface ile List Interface’in farkı
List interface’i implemente eden classlar bir elementten birden fazla depolayabilirken,  
Set interface’i implemente eden classlar bir elementten sadece bir tane depolarlar.

HashSet Sınıfı

HashSet extends AbstractSet implements Set Interface extends Collection extends Iterable

1.HashSet elementleri "hashing" yani hash table  mekanizmasına uygun bir biçimde depolarlar
(Her element belli bir key'e göre depolanır.)

2.HashSet bir element'i sadece bir defa depolar.(Set Interface)

3. Elementlerin ekleme sırasına göre depolamaz.

LinkedHashSet Sınıfı

LinkedHashSet extends HashSet extends AbstractSet implements Set Interface extends Collection extends Iterable

1. LinkedHashSet hem HashTable hem de Set Interface'in LinkedList implementasyonu gibi davranır.

2. HashSette olduğu gibi bir elementi sadece bir defa depolar.(Set Interface)

3. Elementleri ekleme sırasına göre depolar.


TreeSet Sınıfı

TreeSet sınıfı NavigableSet inteface'ini implemente eder ve AbstractSet sınıfından miras alır. 
NavigableSet interface'i de SortedSet interfaceinden miras alır. 

1. Elementleri depolamak için Tree yani Ağaç yapısını kullanır.

2. Elementleri alfabetik olarak sıralarlar.



HashSet vs LinkedHashSet vs TreeSet

HashSet, Hash Table mekanizmasını uyguladığı için elementler sıralı değildir. Ekleme,Çıkarma ve
Arama metodları sabit zamanda( Time Complexity : O(1) ) çalışır. 

TreeSet, elementleri tree yapısına yani ağaç yapısına uygun depolar. Ekleme,Çıkarma ve 
Arama metodları O(log(n)) complexitysi ile çalışır.

LinkedHashSet sınıfı hashtable ile linked list yapısını kullanarak elementleri depolar.Bu yüzden,
elemetler ekleme sırasına göre depolanır. Ekleme,Çıkarma ve Arama metodları 
sabit zamanda( Time Complexity : O(1) ) çalışır.

About

Java - HashSet, LinkedHashSet ve TreeSet

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages