1.0.2 • Published 4 months ago

@slotify/dsa v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months ago

@slotify/dsa

A comprehensive collection of data structures and algorithms implemented in TypeScript.

Overview

This library provides efficient, well-tested implementations of common data structures and algorithms to help developers build performant applications. Each implementation is thoroughly documented with time and space complexity analysis.

Features

  • Type Safety: Fully written in TypeScript with complete type definitions
  • Performance: Optimized implementations with documented time and space complexity
  • Comprehensive: Covers a wide range of algorithms and data structures
  • Well-Documented: Detailed documentation with examples and use cases
  • Modular: Import only what you need to keep your bundle size small

Installation

# Using npm
npm install @slotify/dsa

# Using yarn
yarn add @slotify/dsa

# Using pnpm
pnpm add @slotify/dsa

# Using bun
bun add @slotify/dsa

Import Options

The library supports multiple import styles to fit your preferences and needs:

Import the Entire Library

import * as slotify from '@slotify/dsa';

// Use binary search
const index = slotify.binarySearch.binarySearch([1, 2, 3, 4, 5], 3);

// Use bitwise operations
const result = slotify.bitwise.setBit(42, 3);

// Use sorting algorithms
const sortedArray = slotify.sorting.quick([5, 3, 8, 4, 2]);

Import Specific Modules

import * as bitwise from '@slotify/dsa/bitwise';
import * as binarySearch from '@slotify/dsa/binary-search';
import * as sorting from '@slotify/dsa/sorting';

// Use binary search directly
const index = binarySearch.binarySearch([1, 2, 3, 4, 5], 3);

// Use bitwise operations directly
const result = bitwise.setBit(42, 3);

// Use sorting algorithms directly
const sortedArray = sorting.quick([5, 3, 8, 4, 2]);

Import Specific Functions

import { setBit, isBitSet } from '@slotify/dsa/bitwise';
import { binarySearch, lowerBound } from '@slotify/dsa/binary-search';
import { quick, merge, bubble } from '@slotify/dsa/sorting';

// Use imported functions directly
const index = binarySearch([1, 2, 3, 4, 5], 3);
const result = setBit(42, 3);
const sortedArray = quick([5, 3, 8, 4, 2]);

Documentation

For detailed documentation of each technique, please refer to the docs directory:

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Sandip Patel - sandip254@gmail.com

1.0.2

4 months ago

1.0.1

4 months ago

1.0.0

4 months ago