Skip to content

A Chunk List is a new, concurrent, chunk-based data structure that is easily modifiable and allows for fast run-time operations.

License

Notifications You must be signed in to change notification settings

danielathome19/Chunk-List

Repository files navigation

NuGet CI/CT/CD License DOI

About

A Chunk List is a new, concurrent, chunk-based data structure that is easily modifiable and allows for fast runtime operations.

To find out more, check out the provided research paper:

Installation

Install the ChunkList NuGet package:

dotnet add package ChunkList

Usage

using ChunkList;

ChunkList<int> list = new ChunkList<int>();
for (int i = 1; i <= 100; i++)
    list.add(i);
list.print();

The Presentation folder (i.e., the research paper) contains a full presentation and research paper in PDF format, containing the following information:

  • What is a chunk list?
  • Where is a chunk list used?
  • Implementation details (construction, basic methods)
  • Complexity Analysis (Big-O)
  • Unit Testing
  • Integration

Program files are kept within the master branch.

A full implementation of the class is kept within the ChunkList.cs file in the namespace ChunkList, to be included within the program.

The Unit Test/UnitTest.cs file contains a benchmark test for comparison between an ArrayList (List) and Chunk List.

Bugs/Features

Bugs are tracked using the GitHub Issue Tracker.

Please use the issue tracker for the following purpose:

  • To raise a bug request; do include specific details and label it appropriately.
  • To suggest any improvements in existing features.
  • To suggest new features or structures or applications.

License

The code is licensed under Apache License 2.0.

Citation

If you use this code for your research, please cite this project:

@software{Szelogowski_Chunk-List_2017,
 author = {Szelogowski, Daniel},
 doi = {10.48550/arxiv.2101.00172},
 month = {May},
 title = {{Chunk-List}},
 license = {Apache-2.0},
 url = {https://github.com/danielathome19/Chunk-List},
 version = {1.0.0},
 year = {2017}
}