Skip to content

audaniel9/SkipList

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 

Repository files navigation

CISC 4900 Spring 2018

Group Members:

Name Role
Ruslan Radetskiy Scala
Daniel Au Git, test-check
Joseph Yang Scala
Steven Woo Gradle, test-check

Supervisor:

Maxim Titley
Phone number: 347-927-6045
Email: silversurferonline@gmail.com
Office: 232NE

Maxim Titley is currently our professor for the class Object-Oriented Programming in which three of us are enrolled in. He has also taught some of us for the Design and Implementation I class for the Spring 2017 semester. Other than that, we have no affiliations.

General Problem:

The use of data structures when implementing ideas by writing code is a huge benefit to programmers. All programmers import different libraries to use various data structures to avoid writing their own implementations. Professor Titley has proposed the idea of implementing skip lists and skip graphs and claims he has not seen an implementation of skip graphs in any language which means there are few to no implementations. Skip graphs are a tree structure based on skip lists, which have better insertion and deletion times than linked lists. Skip graphs are useful for searching in P2P networks which are highly useful as users can share files without the use of a server.

Proposed Solution:

We propose to implement skip lists in Scala. This will be done by first implementing the Node class. After we are finished with the Node class, we will implement the skip lists themselves. If time permits and we believe we have a better understanding of skip lists and the Scala programming language, then we will attempt skip graphs.

Outline:

To implement skip lists in Scala, we will read about skip lists by those who created it. There are scholarly papers by the creators which discusses the benefits of skip lists and skip graphs including the running time and break down the importance of it. Then we will read about skip lists in our data structures textbook which implements skip lists in another language. In addition, since we want the implementation to be done in Scala, we will learn the programming language. This will require us to understand the functionality of a functional programming language. After being proficient with Scala, we will implement easy data structures using Scala to get practice. While we are programming, we will also implement tests for our code to fix errors as we program.

About

CISC 4900 project

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •