Created
February 3, 2021 04:56
-
-
Save dwivedys/97e9e9394a1cb20c3c4bed094499cc4e to your computer and use it in GitHub Desktop.
Untitled14.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"metadata": { | |
"colab": { | |
"name": "Untitled14.ipynb", | |
"provenance": [], | |
"collapsed_sections": [], | |
"authorship_tag": "ABX9TyN4aoXViZdEkBeZlf5+avAw", | |
"include_colab_link": true | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3" | |
} | |
}, | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "view-in-github", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"<a href=\"https://colab.research.google.com/gist/dwivedys/97e9e9394a1cb20c3c4bed094499cc4e/untitled14.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 758 | |
}, | |
"id": "ovw9k2aTkneT", | |
"outputId": "0cf9bbb8-3b6e-4652-d284-aed5331c5210" | |
}, | |
"source": [ | |
"import random\n", | |
"import time\n", | |
"import matplotlib.pyplot as plt\n", | |
"%matplotlib inline\n", | |
"\n", | |
"# List sizes of the lists to be sorted\n", | |
"nums = [100, 1000, 10000, 20000, 30000]\n", | |
"\n", | |
"# Declare a dictionary data structure to hold the list size the times it took to sort the list in ascending order\n", | |
"perf_dict = {}\n", | |
"\n", | |
"# This block of code runs for each differently sized list, sorts the list, records the run time of the sort and then publishes the output in a tabular format\n", | |
"\n", | |
"\n", | |
"# The program should run once for each list hence we use a while loop to control the number of runs\n", | |
"z = 0\n", | |
"while(z < len(nums)): \n", | |
" my_list = []\n", | |
"\n", | |
"# Create the list with desired number of elements (uses random numbers to generate the list) \n", | |
" print(f'\\nPass: {z+1} - Sorting a list of {nums[z]} elements') \n", | |
" for x in range(nums[z]):\n", | |
" my_list.append(random.randint(0,x))\n", | |
"\n", | |
" print(f'First 20 elements of the list to be sorted is: {my_list[0:20]}')\n", | |
"\n", | |
" # The Sorting Process begins\n", | |
" start = time.perf_counter()\n", | |
" l = len(my_list)\n", | |
" if l == 0: \n", | |
" print(f'The list is empty')\n", | |
" else: \n", | |
" for i in range(0, l):\n", | |
" for j in range(i+1, l):\n", | |
" if my_list[j] >= my_list[i]:\n", | |
" continue\n", | |
" else:\n", | |
" swap_var = my_list[i]\n", | |
" my_list[i] = my_list[j]\n", | |
" my_list[j] = swap_var\n", | |
" print(f'First 20 elements of the sorted List = {my_list[0:20]}')\n", | |
" end = time.perf_counter()\n", | |
" #print(f'For a list of {l} elements, it took {end - start} seconds to sort')\n", | |
" perf_dict[len(my_list)] = end-start \n", | |
" z = z + 1\n", | |
"\n", | |
"# Print the output results \n", | |
"print(f'List_Size\\t\\tTime (in seconds)')\n", | |
"for m in perf_dict:\n", | |
" print(f'{m}\\t\\t{perf_dict[m]}')\n", | |
"\n", | |
"x = []\n", | |
"y = []\n", | |
"for key in perf_dict:\n", | |
" x.append(key)\n", | |
" y.append(perf_dict[key])\n", | |
"\n", | |
"print(x)\n", | |
"print(y)\n", | |
"\n", | |
"plt.plot(x, y, 'r')\n" | |
], | |
"execution_count": 10, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"\n", | |
"Pass: 1 - Sorting a list of 100 elements\n", | |
"First 20 elements of the list to be sorted is: [0, 0, 0, 2, 1, 3, 5, 1, 0, 3, 6, 5, 2, 11, 3, 10, 6, 7, 14, 11]\n", | |
"First 20 elements of the sorted List = [0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4]\n", | |
"\n", | |
"Pass: 2 - Sorting a list of 1000 elements\n", | |
"First 20 elements of the list to be sorted is: [0, 1, 1, 0, 3, 4, 6, 0, 0, 7, 8, 10, 7, 2, 6, 4, 9, 13, 11, 15]\n", | |
"First 20 elements of the sorted List = [0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 4, 4]\n", | |
"\n", | |
"Pass: 3 - Sorting a list of 10000 elements\n", | |
"First 20 elements of the list to be sorted is: [0, 0, 0, 2, 0, 0, 2, 6, 5, 4, 5, 3, 11, 4, 13, 2, 14, 10, 7, 3]\n", | |
"First 20 elements of the sorted List = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2]\n", | |
"\n", | |
"Pass: 4 - Sorting a list of 20000 elements\n", | |
"First 20 elements of the list to be sorted is: [0, 0, 2, 2, 2, 0, 5, 6, 4, 2, 7, 7, 12, 12, 2, 6, 12, 15, 14, 7]\n", | |
"First 20 elements of the sorted List = [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]\n", | |
"\n", | |
"Pass: 5 - Sorting a list of 30000 elements\n", | |
"First 20 elements of the list to be sorted is: [0, 0, 2, 3, 4, 5, 0, 1, 1, 4, 10, 8, 12, 7, 9, 6, 1, 15, 4, 12]\n", | |
"First 20 elements of the sorted List = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n", | |
"List_Size\t\tTime (in seconds)\n", | |
"100\t\t0.0013394249999691965\n", | |
"1000\t\t0.08856283600016468\n", | |
"10000\t\t8.083250383000177\n", | |
"20000\t\t32.44908605500041\n", | |
"30000\t\t73.21550271900014\n", | |
"[100, 1000, 10000, 20000, 30000]\n", | |
"[0.0013394249999691965, 0.08856283600016468, 8.083250383000177, 32.44908605500041, 73.21550271900014]\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"[<matplotlib.lines.Line2D at 0x7f5ce70aa438>]" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 10 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "JIfEwYDolsMd" | |
}, | |
"source": [ | |
"" | |
], | |
"execution_count": null, | |
"outputs": [] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment