Skip to content

Commit 2d2c78b

Browse files
authored
Merge pull request dynstat#22 from kanstat/main
new programs added
2 parents d311f05 + 9a41dc0 commit 2d2c78b

File tree

4 files changed

+84
-71
lines changed

4 files changed

+84
-71
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
2+
class Node:
3+
def __init__(self, val):
4+
self.next = None
5+
self.value = val
6+
7+
8+
class linked_list:
9+
def __init__(self, head=None):
10+
self.head = head
11+
# a function to reverse the linked list
12+
13+
def reverse_list(self):
14+
current = self.head
15+
previous = None
16+
nxt = None
17+
while current:
18+
nxt = current.next
19+
current.next = previous
20+
previous = current
21+
current = nxt
22+
self.head = previous
23+
24+
def Traverse(self):
25+
temp = self.head
26+
while temp:
27+
print(temp.value, end=" ")
28+
temp = temp.next
29+
print()
30+
31+
32+
if __name__ == "__main__":
33+
node1 = Node(1)
34+
node2 = Node(2)
35+
node3 = Node(3)
36+
node4 = Node(4)
37+
head = node1
38+
node1.next = node2
39+
node2.next = node3
40+
node3.next = node4
41+
42+
linkedlist = linked_list(head)
43+
linkedlist.Traverse()
44+
linkedlist.reverse_list()
45+
linkedlist.Traverse()

kanchan/Sorting/bubble_sort.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# bubble sort algorithm to sort data
2+
3+
def bubbleSort(arr):
4+
5+
for i in range(len(arr)):
6+
for j in range(0, len(arr)-i-1):
7+
if arr[j] > arr[j+1]:
8+
temp = arr[j]
9+
arr[j] = arr[j+1]
10+
arr[j+1] = temp
11+
return arr
12+
13+
14+
if __name__ == "__main__":
15+
arr = [45, 5, 3, 8, 9, 4]
16+
print(bubbleSort(arr))

kanchan/Sorting/selection_sort.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# selection sorting algorthm
2+
3+
def selectionSort(arr: list):
4+
length = len(arr)
5+
for i in range(length):
6+
id_min = i
7+
j = i+1
8+
while(j < length):
9+
if arr[j] < arr[id_min]:
10+
id_min = j
11+
j = j+1
12+
temp = arr[i]
13+
arr[i] = arr[id_min]
14+
arr[id_min] = temp
15+
return arr
16+
17+
18+
if __name__ == "__main__":
19+
print("before sorting")
20+
arr = [6, 3, 2, 4, 1, 0]
21+
print(arr)
22+
print("after sorting")
23+
print(selectionSort(arr))

kanchan/leetcode_ques/reorder_list.py

Lines changed: 0 additions & 71 deletions
This file was deleted.

0 commit comments

Comments
 (0)