Data sct
Data sct
if self.is_empty():
print("Stack is empty.")
return None
return self.stack.pop()
def peek(self):
if self.is_empty():
print("Stack is empty.")
return None
return self.stack[-1]
def is_empty(self):
return len(self.stack) == 0
def pop(self):
if self.is_empty():
return None
return self.stack.pop()
def peek(self):
if self.is_empty():
return None
return self.stack[-1]
def is_empty(self):
return len(self.stack) == 0
return "".join(output)
def pop(self):
if self.is_empty():
return None
return self.stack.pop()
def is_empty(self):
return len(self.stack) == 0
def is_balanced(expression):
stack = Stack()
matching_parentheses = {')': '(', '}': '{', ']': '['}
return stack.is_empty()
if token == '+':
result = operand1 + operand2
elif token == '-':
result = operand1 - operand2
elif token == '*':
result = operand1 * operand2
elif token == '/':
result = operand1 / operand2 # True division
stack.append(result)
return stack.pop()
# Example usage
pos ix_expr = "5 3 2 * + 9 -"
result = evaluate_pos ix(pos ix_expr)
print("Result:", result)
This program uses a stack to evaluate the pos ix expression by itera ng through tokens,
pushing operands onto the stack, and performing opera ons when encountering an
operator.
def dequeue(self):
if self.is_empty():
print("Queue is empty!")
return None
return self.queue.pop(0)
def is_empty(self):
return len(self.queue) == 0
def peek(self):
if self.is_empty():
print("Queue is empty!")
return None
return self.queue[0]
def size(self):
return len(self.queue)
# Example usage
q = Queue()
q.enqueue(10)
q.enqueue(20)
q.enqueue(30)
print("Dequeued:", q.dequeue())
print("Front of queue:", q.peek())
print("Queue size:", q.size())
This program implements a basic queue using a list in Python. It includes opera ons like
enqueue, dequeue, checking if the queue is empty, peeking at the front element, and
ge ng the queue size.
def is_empty(self):
return self.front == -1
if self.front == -1:
self.front = 0
def dequeue(self):
if self.is_empty():
print("Queue is empty!")
return None
item = self.queue[self.front]
if self.front == self.rear:
self.front = self.rear = -1
else:
self.front = (self.front + 1) % self.capacity
return item
def peek(self):
if self.is_empty():
print("Queue is empty!")
return None
return self.queue[self.front]
def display(self):
if self.is_empty():
print("Queue is empty!")
return
i = self.front
while True:
print(self.queue[i], end=" ")
if i == self.rear:
break
i = (i + 1) % self.capacity
print()
# Example usage
cq = CircularQueue(5)
cq.enqueue(10)
cq.enqueue(20)
cq.enqueue(30)
cq.enqueue(40)
cq.enqueue(50)
cq.display()
print("Dequeued:", cq.dequeue())
cq.enqueue(60)
cq.display()
This program implements a circular queue using a fixed-size list in Python. It includes
opera ons like enqueue, dequeue, peek, and display while handling wrap-around cases.
Write a program to implement link list with insert, delete, search, view, and delete
func on ?
Ans :- class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
prev = None
while temp and temp.data != key:
prev = temp
temp = temp.next
if not temp:
print("Key not found!")
return
prev.next = temp.next
temp = None
print(f"Deleted: {key}")
def view(self):
temp = self.head
if not temp:
print("List is empty!")
return
while temp:
print(temp.data, end=" -> ")
temp = temp.next
print("None")
def delete_list(self):
self.head = None
print("Linked list deleted!")
# Example usage
ll = LinkedList()
ll.insert(10)
ll.insert(20)
ll.insert(30)
ll.view()
ll.search(20)
ll.delete(20)
ll.view()
ll.delete_list()
ll.view()
This program implements a singly linked list in Python with func ons to insert, delete,
search, view, and delete the en re list.
class OrderedLinkedList:
def __init__(self):
self.head = None
prev = None
while temp and temp.data != key:
prev = temp
temp = temp.next
if not temp:
print("Key not found!")
return
prev.next = temp.next
temp = None
print(f"Deleted: {key}")
def view(self):
temp = self.head
if not temp:
print("List is empty!")
return
while temp:
print(temp.data, end=" -> ")
temp = temp.next
print("None")
def delete_list(self):
self.head = None
print("Ordered linked list deleted!")
# Example usage
oll = OrderedLinkedList()
oll.insert(30)
oll.insert(10)
oll.insert(20)
oll.insert(40)
oll.view()
oll.search(20)
oll.delete(20)
oll.view()
oll.delete_list()
oll.view()
This program implements an ordered linked list in Python, ensuring elements are
inserted in sorted order. It includes func ons to insert, delete, search, view, and delete
the en re list.
# Example usage
n = 7 # Number of people
k = 3 # Step count
print("The safe posi on is:", josephus_posi on(n, k))
This program implements the Josephus problem using recursion, determining the safe
posi on in a circle.