Skip to content

Commit 0017565

Browse files
committed
Quick SOrt added
1 parent 0ea8db9 commit 0017565

File tree

1 file changed

+86
-0
lines changed

1 file changed

+86
-0
lines changed

Sorting/MergeSort-Copy1.ipynb

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": 9,
6+
"metadata": {},
7+
"outputs": [
8+
{
9+
"name": "stdin",
10+
"output_type": "stream",
11+
"text": [
12+
"Enter the list of numbers: 5 6 3 5 2 1\n"
13+
]
14+
},
15+
{
16+
"name": "stdout",
17+
"output_type": "stream",
18+
"text": [
19+
"Sorted list: [1, 2, 3, 5, 5, 6]\n"
20+
]
21+
}
22+
],
23+
"source": [
24+
"def merge_sort(alist, start, end):\n",
25+
" if end - start > 1:\n",
26+
" mid = (start + end)//2\n",
27+
" merge_sort(alist, start, mid)\n",
28+
" merge_sort(alist, mid, end)\n",
29+
" merge_list(alist, start, mid, end)\n",
30+
" \n",
31+
"def merge_list(alist, start, mid, end):\n",
32+
" left = alist[start:mid]\n",
33+
" right = alist[mid:end]\n",
34+
" k = start\n",
35+
" i = 0\n",
36+
" j = 0\n",
37+
" while (start + i < mid and mid + j < end):\n",
38+
" if (left[i] <= right[j]):\n",
39+
" alist[k] = left[i]\n",
40+
" i = i + 1\n",
41+
" else:\n",
42+
" alist[k] = right[j]\n",
43+
" j = j + 1\n",
44+
" k = k + 1\n",
45+
" if start + i < mid:\n",
46+
" while k < end:\n",
47+
" alist[k] = left[i]\n",
48+
" i = i + 1\n",
49+
" k = k + 1\n",
50+
" else:\n",
51+
" while k < end:\n",
52+
" alist[k] = right[j]\n",
53+
" j = j + 1\n",
54+
" k = k + 1\n",
55+
" \n",
56+
" \n",
57+
"alist = input('Enter the list of numbers: ').split()\n",
58+
"alist = [int(x) for x in alist]\n",
59+
"merge_sort(alist, 0, len(alist))\n",
60+
"print('Sorted list: ', end='')\n",
61+
"print(alist)"
62+
]
63+
}
64+
],
65+
"metadata": {
66+
"kernelspec": {
67+
"display_name": "Python 3",
68+
"language": "python",
69+
"name": "python3"
70+
},
71+
"language_info": {
72+
"codemirror_mode": {
73+
"name": "ipython",
74+
"version": 3
75+
},
76+
"file_extension": ".py",
77+
"mimetype": "text/x-python",
78+
"name": "python",
79+
"nbconvert_exporter": "python",
80+
"pygments_lexer": "ipython3",
81+
"version": "3.7.4"
82+
}
83+
},
84+
"nbformat": 4,
85+
"nbformat_minor": 4
86+
}

0 commit comments

Comments
 (0)