Skip to content

akorkos/Data-Structures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures 101

This repository, includes some well known Data Structures. They were developed, in the course Data Structures [NCO-02-03] (2020/21) of the Department of Computer Science at Aristotle University of Thessaloniki.

Description

The data structures implemented are:

  • Unsorted array,
  • Sorted array,
  • Simple binary search tree,
  • AVL binary search tree, and
  • Hash table with open addressing.

These structures store the different words of the text and the frequency of each word within the text. We assume that a word w1 is smaller than a word w2 when w1 comes before w2 in lexicographical order. For example, "that" < "this", "apple" < "cat", "over" < "under", etc. The text is from the Gutenberg Project and contains well-known works of world literature.

Furthermore, the program supports the following operations for the data structures:

  • insertion,
  • deletion,
  • search

and for the tree structures, additionally, inorder, preorder, and postorder traversal. For the hash table, only insertion and search (deletion is not implemented).

It should also be noted that, preprocessing is performed. For example, we convert uppercase letters to lowercase (because, for example, the word "This" is the same as the word "this") and remove punctuation marks.

More information about the implementation, can be seen on the Wiki of the repository.

Authors