Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

py-linked-list

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

py-linked-list

A Python package with simple implementation of a singly linked list with various utility functions.

  • 1.0.0
  • PyPI
  • Socket score

Maintainers
1

Singly Linked List in Python

A simple implementation of a singly linked list with various utility functions.

Table of Contents

  • Installation
  • Usage
  • Features
  • API Reference
  • Contributing
  • License

Installation

You can install the package via pip:

pip install singly_linked_list

Usage

Here’s a quick example of how to use the SinglyLinkList class:

from singly_linked_list import SinglyLinkList

# Create a new linked list
linked_list = SinglyLinkList()

# Add elements
linked_list.push(10)  # Add to front
linked_list.append(20) # Add to end
linked_list.insert(10, 15) # Insert after 10

# Print the list
print(linked_list.printList())  # Output: [15, 10, 20]

# Remove an element
linked_list.remove(10)
print(linked_list.printList())  # Output: [15, 20]

Features

  • Add Nodes: push(data), append(data), insert(after_element, data)
  • Remove Nodes: remove(element), delete()
  • Search: search(key), count(key)
  • Traversal: printList(), length(), getNth(n), getNthFromLast(n)
  • Utilities: isPalindrome(), checkLoop(), lengthOfLoop(), uniqueSorted()
  • Modify List: reverseList(), segregateEvenOdd()
  • Merging Lists: mergeTwoLists(l1, l2)

API Reference

The SinglyLinkList class provides methods for manipulating linked lists as described in the features section. Each method has its own functionality:

  • Initialization: SinglyLinkList()

  • Add Nodes:

    • push(data): Add a new node at the beginning.
    • append(data): Add a new node at the end.
    • insert(after_element, data): Insert a new node after a specified element.
  • Remove Nodes:

    • remove(element): Remove the first occurrence of an element.
    • delete(): Delete the entire linked list.
  • Traversal and Querying:

    • printList(): Return a list of node values.
    • length(): Return the number of nodes in the list.
    • getNth(n): Get the nth node's data.
    • getNthFromLast(n): Get the nth node's data from the end.
  • Utilities:

    • isPalindrome(): Check if the list is a palindrome.
    • checkLoop(): Check for loops in the list.
    • lengthOfLoop(): Find the length of a loop if it exists.
    • uniqueSorted(): Retrieve unique elements in sorted order.
  • Modify List:

    • reverseList(): Reverse the order of nodes.
    • segregateEvenOdd(): Separate even and odd nodes.
  • Merging Lists:

    • mergeTwoLists(l1, l2): Merge two sorted linked lists.

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

License

This project is licensed under the MIT License.

image

Keywords

FAQs


Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc