You are on page 1of 7

NAME : ABDUL-RAUF KHAN

ROLL NO : F22-BSSE-1042

ASSIGNMENT : DSA(DATA STRUCTURE & ALGORITM)

SEMESTER : 3RD (M)

DEPARTMENT : BS SOFTWARE ENGINEERING

UNIVERSITY OF OKARA

Program no # 01
Python program to implement stack and list

class Stack:
def __init__(self):
self.items = []

def is_empty(self):
return len(self.items) == 0

def push(self, item):


self.items.append(item)

def pop(self):
if not self.is_empty():
return self.items.pop()
else:
return "Stack is empty"

def peek(self):
if not self.is_empty():
return self.items[-1]
else:
return "Stack is empty"

def size(self):
return len(self.items)

# Example usage of the Stack class


stack = Stack()

stack.push(1)
stack.push(2)
stack.push(3)

print("Stack:", stack.items)
print("Pop item:", stack.pop())
print("Stack after pop:", stack.items)
print("Peek:", stack.peek())
print("Stack size:", stack.size())
PROGRAM NO # 02
Python program for binary search

def linear_search(arr, target):


for i in range(len(arr)):
if arr[i] == target:
return i # Return the index where the target element is found
return -1 # Return -1 if the target element is not in the array

# Example usage of linear_search function


array = [2, 4, 6, 8, 10, 12, 14]

target = 10
result = linear_search(array, target)

if result != -1:
print(f"{target} found at index {result}")
else:
print(f"{target} not found in the array")
PROGRAM NO # 03
Write a program in python for linear search of an
element.
def linear_search(arr, target):
for i in range(len(arr)):
if arr[i] == target:
return i
return -1

PROGRAM NO # 04
Write a program for binary search of an element ..

def binary_search(arr, target):


left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1

PROGRAM NO # 05

class Queue:
def __init__(self):
self.items = []

def is_empty(self):
return len(self.items) == 0

def enqueue(self, item):


self.items.append(item)
def dequeue(self):
if not self.is_empty():
return self.items.pop(0)
else:
return "Queue is empty"

You might also like