Skip to content

Commit

Permalink
Add typing to data_structures/queue/queue_on_pseudo_stack.py (TheAlgo…
Browse files Browse the repository at this point in the history
…rithms#7037)

* Add typing

hacktoberfest

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
saksham-chawla and pre-commit-ci[bot] authored Oct 12, 2022
1 parent aeb933b commit e272b9d
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions data_structures/queue/queue_on_pseudo_stack.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Queue represented by a pseudo stack (represented by a list with pop and append)"""
from typing import Any


class Queue:
Expand All @@ -14,7 +15,7 @@ def __str__(self):
@param item
item to enqueue"""

def put(self, item):
def put(self, item: Any) -> None:
self.stack.append(item)
self.length = self.length + 1

Expand All @@ -23,7 +24,7 @@ def put(self, item):
@return dequeued
item that was dequeued"""

def get(self):
def get(self) -> Any:
self.rotate(1)
dequeued = self.stack[self.length - 1]
self.stack = self.stack[:-1]
Expand All @@ -35,7 +36,7 @@ def get(self):
@param rotation
number of times to rotate queue"""

def rotate(self, rotation):
def rotate(self, rotation: int) -> None:
for i in range(rotation):
temp = self.stack[0]
self.stack = self.stack[1:]
Expand All @@ -45,13 +46,13 @@ def rotate(self, rotation):
"""Reports item at the front of self
@return item at front of self.stack"""

def front(self):
def front(self) -> Any:
front = self.get()
self.put(front)
self.rotate(self.length - 1)
return front

"""Returns the length of this.stack"""

def size(self):
def size(self) -> int:
return self.length

0 comments on commit e272b9d

Please sign in to comment.