Skip to main content

Simple implementation of data structures for python

Project description

fds

Simple implementaion of data structures (DS) for python

Content

  • linked list
  • stack
  • queue

Classes

  • List // linked list
  • DList // doubly linked list
  • Stack // stack
  • Queue // queue

API

List

  • insert(self, data, pos=0) // TODO: add node in the entered position (pos=0 => add in the begining)
  • append(self, data) // TODO: add node in the end
  • delete(self, data) // TODO: delete all nodes hav the entered data
  • remove(self, pos=0) // TODO: return and remove node in the entered position (pos=0 => remove first node, pos=-1 => remove last node)
  • first(self) // TODO: return the data in the first node
  • last(self) // TODO: return the data in the last node

DList

  • add_begin(self, data) // TODO: add a node to the begin
  • add_fin(self, data) // TODO: add a node to the fin
  • delete(self, data) // TODO: delete all nodes hav the entered data
  • remove(self, pos=0) // TODO: return and remove node in the entered position (pos=0 => remove first node, pos=-1 => remove last node)
  • first(self) // TODO: return the data in the first node
  • last(self) // TODO: return the data in the last node

Stack

  • push(self, data) // TODO: add a node to the top
  • pop(self) // TODO: return and remove the node in the top
  • top(self) // TODO: return the data in the first node

Queue

  • enqueue(self, data) // TODO: add a node to the end
  • dequeue(self) // TODO: return and remove the first element
  • front(self) // TODO: return the data in the first node
  • back(self) // TODO: return the data in the last node

API for all DSs

  • str(self) // USE: print([DS_name]) // TODO: display the DS
  • len(self) // USE: len([DS_name]) // TODO: return the lenth of the DS
  • empty(self) // TODO: return True if the DS is empty
  • clear(self) // TODO: clear the DS
  • find(self, data) // TODO: return the number of how many the entered data found in the DS
  • reverse(self) // TODO: return the reverse of the DS
  • exchange(self, n) // TODO: circular permutation for n time

classmethods for all DSs

// USE: [DS] = [DS_type].method([DS1], [DS2])
// Examples:
>>> stck3 = Stack.merge(stck1, stck2)
>>> Stack.swap([DS1], [DS2])
the tow DS parameters must be from the same DS

  • merge(cls, DS1, DS2) // TODO: return the merge of two DS in new DS
  • swap(cls, DS1, DS2) // TODO: swap between DS1 and DS2 (DS1 will be DS2 and DS2 will be DS1)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py-fds-2.0.0rc0.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

py_fds-2.0.0rc0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file py-fds-2.0.0rc0.tar.gz.

File metadata

  • Download URL: py-fds-2.0.0rc0.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for py-fds-2.0.0rc0.tar.gz
Algorithm Hash digest
SHA256 f369d2cf9e6465b6228fbc35708e2af710ee2184d6c877c3776c118ed6339da4
MD5 ae31fb1716fb2c596021ed008f318590
BLAKE2b-256 66e9bbf245a90e14f8df486645e489d416453b69c9b745427fda98c5ec1490de

See more details on using hashes here.

File details

Details for the file py_fds-2.0.0rc0-py3-none-any.whl.

File metadata

  • Download URL: py_fds-2.0.0rc0-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for py_fds-2.0.0rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 332ac82effe0bf23a618e11e881b8781b65e213eb6a60169e00d81aad62f9509
MD5 e0f5c19af14e4e4b28f4fa54aac7980a
BLAKE2b-256 62a6908a1362ecbe4f80dbac08bb97af1f5b80b194fa8ade2553314aa9b62247

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page