0% found this document useful (0 votes)
13 views9 pages

Day 2

The document contains code snippets demonstrating different Python sorting algorithms including bubble sort, merge sort, and bucket sort. It also includes a function to check for rectangle overlap.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views9 pages

Day 2

The document contains code snippets demonstrating different Python sorting algorithms including bubble sort, merge sort, and bucket sort. It also includes a function to check for rectangle overlap.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

1.

str= input("enter the string:")

sub= input("enter the sub string:")

newstr= input("enter the new string:")

str=str.replace(sub,newstr)

print("new string:"+str)

ans: enter the string:DGCT college

enter the sub string:college

enter the new string:technoiogy

new string:DGCT technoiogy

2) def bubble_sort(arr):

n=len(arr)

for i in range(n-1):

flag=0

for j in range(0,n-i-1):

if arr[j]>arr[j+1]:

arr[j+1],arr[j]=arr[j],arr[j+1]

flag=1

if flag==0:

break

return arr

arr=[5,4,3,2,1]

print(bubble_sort(arr))
3) def merge(arr, l, m, r):

n1 = m - l + 1

n2 = r - m

L = [0] * (n1)

R = [0] * (n2)

for i in range(0, n1):

L[i] = arr[l + i]
for j in range(0, n2):

R[j] = arr[m + 1 + j]

i=0

j=0

k=l

while i < n1 and j < n2:

if L[i] <= R[j]:

arr[k] = L[i]

i += 1

else:

arr[k] = R[j]

j += 1

k += 1

while i < n1:

arr[k] = L[i]

i += 1

k += 1

while j < n2:

arr[k] = R[j]

j += 1

k += 1
def mergeSort(arr, l, r):

if l < r:

m = l+(r-l)//2

mergeSort(arr, l, m)

mergeSort(arr, m+1, r)

merge(arr, l, m, r)

arr = [12, 11, 13, 5, 6, 7]

n = len(arr)

print("Given array is")

for i in range(n):

print("%d" % arr[i],end=" ")

mergeSort(arr, 0, n-1)

print("\n\nSorted array is")

for i in range(n):

print("%d" % arr[i],end=" ")


4) class Point:

def __init__(self, x, y):

self.x = x

self.y = y

def do_overlap(l1, r1, l2, r2):

if l1.x == r1.x or l1.y == r1.y or r2.x == l2.x or l2.y == r2.y:

return False
if l1.x > r2.x or l2.x > r1.x:

return False

if r1.y > l2.y or r2.y > l1.y:

return False

return True

if __name__ == "__main__":

l1 = Point(0, 10)

r1 = Point(10, 0)

l2 = Point(5, 5)

r2 = Point(15, 0)

if(do_overlap(l1, r1, l2, r2)):

print("Rectangles Overlap")

else:

print("Rectangles Don't Overlap")


5) def insertionSort(b):

for i in range(1, len(b)):

up = b[i]

j=i-1

while j >= 0 and b[j] > up:

b[j + 1] = b[j]

j -= 1

b[j + 1] = up

return b
def bucketSort(x):

arr = []

slot_num = 10

for i in range(slot_num):

arr.append([])

for j in x:

index_b = int(slot_num * j)

arr[index_b].append(j)

for i in range(slot_num):

arr[i] = insertionSort(arr[i])

k=0

for i in range(slot_num):

for j in range(len(arr[i])):

x[k] = arr[i][j]

k += 1

return x

x = [0.897, 0.565, 0.656,

0.1234, 0.665, 0.3434]

print("Sorted Array is")

print(bucketSort(x))

You might also like