Socket
Socket
Sign inDemoInstall

@sivarajans/hash-table

Package Overview
Dependencies
1
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @sivarajans/hash-table

Hash table - Seperate chaining, Open addressing (linear probing, quadratic probing, double hashing)


Version published
Weekly downloads
3
increased by50%
Maintainers
1
Install size
7.02 kB
Created
Weekly downloads
 

Readme

Source

HashTable

It is a way to order data in memory using the hash function and key.

Hash(x) - is a hash function, x is a key. P(x) - is a probe function to fix when same index found - used only in Open Addressing.

Same key fix options

  1. Seperate Chaining Using one of data structure to add more elements in same key - here we will use linked list.

  2. Open Addressing [NOT PROVIDED IN THE SOLUTION]

    Open addressing searches for free index in array and fill it. There are 3 options available here.

    a. Linear probing for ex: ax + b (a & b are constants)

    b. Quadratic probing for ex: ax2 + bx + c (a, b, c are constants)

    c. Double hashing for ex: h1(x) + h2(y) (h1 & h2 are hashing on key and result respectively)

Ways to eliminate cycles.

Maintain Greatest Common Denominator(N, a) = 1 where N - total elements, a - constant in h(x) = ax and Prime Numbers.

Load Factor = a / N when load factor reaches its limit, hastable needs to be resized to next set of prime numbers and values should get refilled to maintain order.

Installation

npm i @sivarajans/hash-table Note - only seperate chaining available in this module

Keywords

FAQs

Last updated on 17 Mar 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc