mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-12-18 01:00:15 +00:00
Fix all errors mentioned in pre-commit run (#2512)
* Fix all errors mentioned in pre-commit run: - Fix end of file - Remove trailing whitespace - Fix files with black - Fix imports with isort * Fix errors
This commit is contained in:
parent
e6e2dc69d5
commit
0a42ae9095
2
.github/stale.yml
vendored
2
.github/stale.yml
vendored
|
@ -16,5 +16,5 @@ markComment: >
|
||||||
for your contributions.
|
for your contributions.
|
||||||
# Comment to post when closing a stale issue. Set to `false` to disable
|
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||||
closeComment: >
|
closeComment: >
|
||||||
Please reopen this issue once you commit the changes requested or
|
Please reopen this issue once you commit the changes requested or
|
||||||
make improvements on the code. Thank you for your contributions.
|
make improvements on the code. Thank you for your contributions.
|
||||||
|
|
2
.github/workflows/autoblack.yml
vendored
2
.github/workflows/autoblack.yml
vendored
|
@ -19,7 +19,7 @@ jobs:
|
||||||
black .
|
black .
|
||||||
isort --profile black .
|
isort --profile black .
|
||||||
git config --global user.name github-actions
|
git config --global user.name github-actions
|
||||||
git config --global user.email '${GITHUB_ACTOR}@users.noreply.github.com'
|
git config --global user.email '${GITHUB_ACTOR}@users.noreply.github.com'
|
||||||
git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY
|
git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY
|
||||||
git commit -am "fixup! Format Python code with psf/black push"
|
git commit -am "fixup! Format Python code with psf/black push"
|
||||||
git push --force origin HEAD:$GITHUB_REF
|
git push --force origin HEAD:$GITHUB_REF
|
||||||
|
|
|
@ -9,7 +9,7 @@ jobs:
|
||||||
include:
|
include:
|
||||||
- name: Build
|
- name: Build
|
||||||
before_script:
|
before_script:
|
||||||
- black --check . || true
|
- black --check . || true
|
||||||
- flake8 --ignore=E203,W503 --max-complexity=25 --max-line-length=88 --statistics --count .
|
- flake8 --ignore=E203,W503 --max-complexity=25 --max-line-length=88 --statistics --count .
|
||||||
- scripts/validate_filenames.py # no uppercase, no spaces, in a directory
|
- scripts/validate_filenames.py # no uppercase, no spaces, in a directory
|
||||||
- pip install -r requirements.txt # fast fail on black, flake8, validate_filenames
|
- pip install -r requirements.txt # fast fail on black, flake8, validate_filenames
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# The Algorithms - Python
|
# The Algorithms - Python
|
||||||
[![Gitpod Ready-to-Code](https://img.shields.io/badge/Gitpod-Ready--to--Code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/TheAlgorithms/Python)
|
[![Gitpod Ready-to-Code](https://img.shields.io/badge/Gitpod-Ready--to--Code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/TheAlgorithms/Python)
|
||||||
[![Gitter chat](https://img.shields.io/badge/Chat-Gitter-ff69b4.svg?label=Chat&logo=gitter&style=flat-square)](https://gitter.im/TheAlgorithms)
|
[![Gitter chat](https://img.shields.io/badge/Chat-Gitter-ff69b4.svg?label=Chat&logo=gitter&style=flat-square)](https://gitter.im/TheAlgorithms)
|
||||||
[![Build Status](https://img.shields.io/travis/TheAlgorithms/Python.svg?label=Travis%20CI&logo=travis&style=flat-square)](https://travis-ci.com/TheAlgorithms/Python)
|
[![Build Status](https://img.shields.io/travis/TheAlgorithms/Python.svg?label=Travis%20CI&logo=travis&style=flat-square)](https://travis-ci.com/TheAlgorithms/Python)
|
||||||
[![LGTM](https://img.shields.io/lgtm/alerts/github/TheAlgorithms/Python.svg?label=LGTM&logo=LGTM&style=flat-square)](https://lgtm.com/projects/g/TheAlgorithms/Python/alerts)
|
[![LGTM](https://img.shields.io/lgtm/alerts/github/TheAlgorithms/Python.svg?label=LGTM&logo=LGTM&style=flat-square)](https://lgtm.com/projects/g/TheAlgorithms/Python/alerts)
|
||||||
|
|
|
@ -3,9 +3,9 @@ Braidwood, Illustrated by Susan T. Richert
|
||||||
|
|
||||||
|
|
||||||
This eBook is for the use of anyone anywhere in the United States and most
|
This eBook is for the use of anyone anywhere in the United States and most
|
||||||
other parts of the world at no cost and with almost no restrictions
|
other parts of the world at no cost and with almost no restrictions
|
||||||
whatsoever. You may copy it, give it away or re-use it under the terms of
|
whatsoever. You may copy it, give it away or re-use it under the terms of
|
||||||
the Project Gutenberg License included with this eBook or online at
|
the Project Gutenberg License included with this eBook or online at
|
||||||
www.gutenberg.org. If you are not located in the United States, you'll have
|
www.gutenberg.org. If you are not located in the United States, you'll have
|
||||||
to check the laws of the country where you are located before using this ebook.
|
to check the laws of the country where you are located before using this ebook.
|
||||||
|
|
||||||
|
@ -7109,9 +7109,9 @@ and permanent future for Project Gutenberg-tm and future
|
||||||
generations. To learn more about the Project Gutenberg Literary
|
generations. To learn more about the Project Gutenberg Literary
|
||||||
Archive Foundation and how your efforts and donations can help, see
|
Archive Foundation and how your efforts and donations can help, see
|
||||||
Sections 3 and 4 and the Foundation information page at
|
Sections 3 and 4 and the Foundation information page at
|
||||||
www.gutenberg.org
|
www.gutenberg.org
|
||||||
|
|
||||||
Section 3. Information about the Project Gutenberg Literary
|
Section 3. Information about the Project Gutenberg Literary
|
||||||
Archive Foundation
|
Archive Foundation
|
||||||
|
|
||||||
The Project Gutenberg Literary Archive Foundation is a non profit
|
The Project Gutenberg Literary Archive Foundation is a non profit
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
Computer vision is a field of computer science that works on enabling computers to see,
|
Computer vision is a field of computer science that works on enabling computers to see,
|
||||||
identify and process images in the same way that human vision does, and then provide appropriate output.
|
identify and process images in the same way that human vision does, and then provide appropriate output.
|
||||||
It is like imparting human intelligence and instincts to a computer.
|
It is like imparting human intelligence and instincts to a computer.
|
||||||
Image processing and computer vision and little different from each other.Image processing means applying some algorithms for transforming image from one form to other like smoothing,contrasting, stretching etc
|
Image processing and computer vision and little different from each other.Image processing means applying some algorithms for transforming image from one form to other like smoothing,contrasting, stretching etc
|
||||||
While in computer vision comes from modelling image processing using the techniques of machine learning.Computer vision applies machine learning to recognize patterns for interpretation of images.
|
While in computer vision comes from modelling image processing using the techniques of machine learning.Computer vision applies machine learning to recognize patterns for interpretation of images.
|
||||||
Much like the process of visual reasoning of human vision
|
Much like the process of visual reasoning of human vision
|
||||||
|
|
|
@ -3,14 +3,16 @@ render 3d points for 2d surfaces.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
import math
|
import math
|
||||||
|
|
||||||
__version__ = "2020.9.26"
|
__version__ = "2020.9.26"
|
||||||
__author__ = "xcodz-dot, cclaus, dhruvmanila"
|
__author__ = "xcodz-dot, cclaus, dhruvmanila"
|
||||||
|
|
||||||
|
|
||||||
def convert_to_2d(x: float, y: float, z: float, scale: float,
|
def convert_to_2d(
|
||||||
distance: float) -> tuple[float, float]:
|
x: float, y: float, z: float, scale: float, distance: float
|
||||||
|
) -> tuple[float, float]:
|
||||||
"""
|
"""
|
||||||
Converts 3d point to a 2d drawable point
|
Converts 3d point to a 2d drawable point
|
||||||
|
|
||||||
|
@ -26,15 +28,17 @@ def convert_to_2d(x: float, y: float, z: float, scale: float,
|
||||||
TypeError: Input values must either be float or int: ['1', 2, 3, 10, 10]
|
TypeError: Input values must either be float or int: ['1', 2, 3, 10, 10]
|
||||||
"""
|
"""
|
||||||
if not all(isinstance(val, (float, int)) for val in locals().values()):
|
if not all(isinstance(val, (float, int)) for val in locals().values()):
|
||||||
raise TypeError("Input values must either be float or int: "
|
raise TypeError(
|
||||||
f"{list(locals().values())}")
|
"Input values must either be float or int: " f"{list(locals().values())}"
|
||||||
|
)
|
||||||
projected_x = ((x * distance) / (z + distance)) * scale
|
projected_x = ((x * distance) / (z + distance)) * scale
|
||||||
projected_y = ((y * distance) / (z + distance)) * scale
|
projected_y = ((y * distance) / (z + distance)) * scale
|
||||||
return projected_x, projected_y
|
return projected_x, projected_y
|
||||||
|
|
||||||
|
|
||||||
def rotate(x: float, y: float, z: float, axis: str,
|
def rotate(
|
||||||
angle: float) -> tuple[float, float, float]:
|
x: float, y: float, z: float, axis: str, angle: float
|
||||||
|
) -> tuple[float, float, float]:
|
||||||
"""
|
"""
|
||||||
rotate a point around a certain axis with a certain angle
|
rotate a point around a certain axis with a certain angle
|
||||||
angle can be any integer between 1, 360 and axis can be any one of
|
angle can be any integer between 1, 360 and axis can be any one of
|
||||||
|
@ -67,18 +71,20 @@ def rotate(x: float, y: float, z: float, axis: str,
|
||||||
input_variables = locals()
|
input_variables = locals()
|
||||||
del input_variables["axis"]
|
del input_variables["axis"]
|
||||||
if not all(isinstance(val, (float, int)) for val in input_variables.values()):
|
if not all(isinstance(val, (float, int)) for val in input_variables.values()):
|
||||||
raise TypeError("Input values except axis must either be float or int: "
|
raise TypeError(
|
||||||
f"{list(input_variables.values())}")
|
"Input values except axis must either be float or int: "
|
||||||
|
f"{list(input_variables.values())}"
|
||||||
|
)
|
||||||
angle = (angle % 360) / 450 * 180 / math.pi
|
angle = (angle % 360) / 450 * 180 / math.pi
|
||||||
if axis == 'z':
|
if axis == "z":
|
||||||
new_x = x * math.cos(angle) - y * math.sin(angle)
|
new_x = x * math.cos(angle) - y * math.sin(angle)
|
||||||
new_y = y * math.cos(angle) + x * math.sin(angle)
|
new_y = y * math.cos(angle) + x * math.sin(angle)
|
||||||
new_z = z
|
new_z = z
|
||||||
elif axis == 'x':
|
elif axis == "x":
|
||||||
new_y = y * math.cos(angle) - z * math.sin(angle)
|
new_y = y * math.cos(angle) - z * math.sin(angle)
|
||||||
new_z = z * math.cos(angle) + y * math.sin(angle)
|
new_z = z * math.cos(angle) + y * math.sin(angle)
|
||||||
new_x = x
|
new_x = x
|
||||||
elif axis == 'y':
|
elif axis == "y":
|
||||||
new_x = x * math.cos(angle) - z * math.sin(angle)
|
new_x = x * math.cos(angle) - z * math.sin(angle)
|
||||||
new_z = z * math.cos(angle) + x * math.sin(angle)
|
new_z = z * math.cos(angle) + x * math.sin(angle)
|
||||||
new_y = y
|
new_y = y
|
||||||
|
|
|
@ -1,35 +1,35 @@
|
||||||
# Linear algebra library for Python
|
# Linear algebra library for Python
|
||||||
|
|
||||||
This module contains classes and functions for doing linear algebra.
|
This module contains classes and functions for doing linear algebra.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
### class Vector
|
### class Vector
|
||||||
-
|
-
|
||||||
- This class represents a vector of arbitrary size and related operations.
|
- This class represents a vector of arbitrary size and related operations.
|
||||||
|
|
||||||
**Overview about the methods:**
|
**Overview about the methods:**
|
||||||
|
|
||||||
- constructor(components : list) : init the vector
|
|
||||||
- set(components : list) : changes the vector components.
|
|
||||||
- \_\_str\_\_() : toString method
|
|
||||||
- component(i : int): gets the i-th component (start by 0)
|
|
||||||
- \_\_len\_\_() : gets the size / length of the vector (number of components)
|
|
||||||
- euclidLength() : returns the eulidean length of the vector.
|
|
||||||
- operator + : vector addition
|
|
||||||
- operator - : vector subtraction
|
|
||||||
- operator * : scalar multiplication and dot product
|
|
||||||
- copy() : copies this vector and returns it.
|
|
||||||
- changeComponent(pos,value) : changes the specified component.
|
|
||||||
|
|
||||||
- function zeroVector(dimension)
|
- constructor(components : list) : init the vector
|
||||||
- returns a zero vector of 'dimension'
|
- set(components : list) : changes the vector components.
|
||||||
- function unitBasisVector(dimension,pos)
|
- \_\_str\_\_() : toString method
|
||||||
- returns a unit basis vector with a One at index 'pos' (indexing at 0)
|
- component(i : int): gets the i-th component (start by 0)
|
||||||
- function axpy(scalar,vector1,vector2)
|
- \_\_len\_\_() : gets the size / length of the vector (number of components)
|
||||||
- computes the axpy operation
|
- euclidLength() : returns the eulidean length of the vector.
|
||||||
|
- operator + : vector addition
|
||||||
|
- operator - : vector subtraction
|
||||||
|
- operator * : scalar multiplication and dot product
|
||||||
|
- copy() : copies this vector and returns it.
|
||||||
|
- changeComponent(pos,value) : changes the specified component.
|
||||||
|
|
||||||
|
- function zeroVector(dimension)
|
||||||
|
- returns a zero vector of 'dimension'
|
||||||
|
- function unitBasisVector(dimension,pos)
|
||||||
|
- returns a unit basis vector with a One at index 'pos' (indexing at 0)
|
||||||
|
- function axpy(scalar,vector1,vector2)
|
||||||
|
- computes the axpy operation
|
||||||
- function randomVector(N,a,b)
|
- function randomVector(N,a,b)
|
||||||
- returns a random vector of size N, with random integer components between 'a' and 'b'.
|
- returns a random vector of size N, with random integer components between 'a' and 'b'.
|
||||||
|
|
||||||
|
@ -37,39 +37,39 @@ This module contains classes and functions for doing linear algebra.
|
||||||
-
|
-
|
||||||
- This class represents a matrix of arbitrary size and operations on it.
|
- This class represents a matrix of arbitrary size and operations on it.
|
||||||
|
|
||||||
**Overview about the methods:**
|
**Overview about the methods:**
|
||||||
|
|
||||||
- \_\_str\_\_() : returns a string representation
|
|
||||||
- operator * : implements the matrix vector multiplication
|
|
||||||
implements the matrix-scalar multiplication.
|
|
||||||
- changeComponent(x,y,value) : changes the specified component.
|
|
||||||
- component(x,y) : returns the specified component.
|
|
||||||
- width() : returns the width of the matrix
|
|
||||||
- height() : returns the height of the matrix
|
|
||||||
- determinate() : returns the determinate of the matrix if it is square
|
|
||||||
- operator + : implements the matrix-addition.
|
|
||||||
- operator - _ implements the matrix-subtraction
|
|
||||||
|
|
||||||
- function squareZeroMatrix(N)
|
- \_\_str\_\_() : returns a string representation
|
||||||
- returns a square zero-matrix of dimension NxN
|
- operator * : implements the matrix vector multiplication
|
||||||
- function randomMatrix(W,H,a,b)
|
implements the matrix-scalar multiplication.
|
||||||
- returns a random matrix WxH with integer components between 'a' and 'b'
|
- changeComponent(x,y,value) : changes the specified component.
|
||||||
|
- component(x,y) : returns the specified component.
|
||||||
|
- width() : returns the width of the matrix
|
||||||
|
- height() : returns the height of the matrix
|
||||||
|
- determinate() : returns the determinate of the matrix if it is square
|
||||||
|
- operator + : implements the matrix-addition.
|
||||||
|
- operator - _ implements the matrix-subtraction
|
||||||
|
|
||||||
|
- function squareZeroMatrix(N)
|
||||||
|
- returns a square zero-matrix of dimension NxN
|
||||||
|
- function randomMatrix(W,H,a,b)
|
||||||
|
- returns a random matrix WxH with integer components between 'a' and 'b'
|
||||||
---
|
---
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
This module uses docstrings to enable the use of Python's in-built `help(...)` function.
|
This module uses docstrings to enable the use of Python's in-built `help(...)` function.
|
||||||
For instance, try `help(Vector)`, `help(unitBasisVector)`, and `help(CLASSNAME.METHODNAME)`.
|
For instance, try `help(Vector)`, `help(unitBasisVector)`, and `help(CLASSNAME.METHODNAME)`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
Import the module `lib.py` from the **src** directory into your project.
|
Import the module `lib.py` from the **src** directory into your project.
|
||||||
Alternatively, you can directly use the Python bytecode file `lib.pyc`.
|
Alternatively, you can directly use the Python bytecode file `lib.pyc`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Tests
|
## Tests
|
||||||
|
|
||||||
`src/tests.py` contains Python unit tests which can be run with `python3 -m unittest -v`.
|
`src/tests.py` contains Python unit tests which can be run with `python3 -m unittest -v`.
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
predict house price.
|
predict house price.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import pandas as pd
|
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
|
import pandas as pd
|
||||||
from sklearn.datasets import load_boston
|
from sklearn.datasets import load_boston
|
||||||
from sklearn.metrics import mean_squared_error, r2_score
|
|
||||||
from sklearn.ensemble import GradientBoostingRegressor
|
from sklearn.ensemble import GradientBoostingRegressor
|
||||||
|
from sklearn.metrics import mean_squared_error, r2_score
|
||||||
from sklearn.model_selection import train_test_split
|
from sklearn.model_selection import train_test_split
|
||||||
|
|
||||||
|
|
||||||
|
@ -42,10 +42,7 @@ def main():
|
||||||
training_score = model.score(X_train, y_train).round(3)
|
training_score = model.score(X_train, y_train).round(3)
|
||||||
test_score = model.score(X_test, y_test).round(3)
|
test_score = model.score(X_test, y_test).round(3)
|
||||||
print("Training score of GradientBoosting is :", training_score)
|
print("Training score of GradientBoosting is :", training_score)
|
||||||
print(
|
print("The test score of GradientBoosting is :", test_score)
|
||||||
"The test score of GradientBoosting is :",
|
|
||||||
test_score
|
|
||||||
)
|
|
||||||
# Let us evaluation the model by finding the errors
|
# Let us evaluation the model by finding the errors
|
||||||
y_pred = model.predict(X_test)
|
y_pred = model.predict(X_test)
|
||||||
|
|
||||||
|
@ -57,8 +54,7 @@ def main():
|
||||||
# So let's run the model against the test data
|
# So let's run the model against the test data
|
||||||
fig, ax = plt.subplots()
|
fig, ax = plt.subplots()
|
||||||
ax.scatter(y_test, y_pred, edgecolors=(0, 0, 0))
|
ax.scatter(y_test, y_pred, edgecolors=(0, 0, 0))
|
||||||
ax.plot([y_test.min(), y_test.max()],
|
ax.plot([y_test.min(), y_test.max()], [y_test.min(), y_test.max()], "k--", lw=4)
|
||||||
[y_test.min(), y_test.max()], "k--", lw=4)
|
|
||||||
ax.set_xlabel("Actual")
|
ax.set_xlabel("Actual")
|
||||||
ax.set_ylabel("Predicted")
|
ax.set_ylabel("Predicted")
|
||||||
ax.set_title("Truth vs Predicted")
|
ax.set_title("Truth vs Predicted")
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
Sieve of Eratosthenes
|
Sieve of Eratosthenes
|
||||||
|
|
||||||
Input : n =10
|
Input : n =10
|
||||||
Output: 2 3 5 7
|
Output: 2 3 5 7
|
||||||
|
|
||||||
Input : n = 20
|
Input : n = 20
|
||||||
Output: 2 3 5 7 11 13 17 19
|
Output: 2 3 5 7 11 13 17 19
|
||||||
|
|
||||||
you can read in detail about this at
|
you can read in detail about this at
|
||||||
https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes
|
https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes
|
||||||
|
|
|
@ -17,4 +17,4 @@
|
||||||
04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36
|
04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36
|
||||||
20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16
|
20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16
|
||||||
20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54
|
20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54
|
||||||
01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
|
01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
|
||||||
|
|
|
@ -997,4 +997,4 @@
|
||||||
672276,515708
|
672276,515708
|
||||||
325361,545187
|
325361,545187
|
||||||
172115,573985
|
172115,573985
|
||||||
13846,725685
|
13846,725685
|
||||||
|
|
|
@ -2899,4 +2899,4 @@
|
||||||
725,
|
725,
|
||||||
"4598797036650685"
|
"4598797036650685"
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
|
@ -13,9 +13,9 @@ The array elements are taken from a Standard Normal Distribution , having mean =
|
||||||
|
|
||||||
```python
|
```python
|
||||||
|
|
||||||
>>> import numpy as np
|
>>> import numpy as np
|
||||||
>>> from tempfile import TemporaryFile
|
>>> from tempfile import TemporaryFile
|
||||||
>>> outfile = TemporaryFile()
|
>>> outfile = TemporaryFile()
|
||||||
>>> p = 100 # 100 elements are to be sorted
|
>>> p = 100 # 100 elements are to be sorted
|
||||||
>>> mu, sigma = 0, 1 # mean and standard deviation
|
>>> mu, sigma = 0, 1 # mean and standard deviation
|
||||||
>>> X = np.random.normal(mu, sigma, p)
|
>>> X = np.random.normal(mu, sigma, p)
|
||||||
|
@ -34,7 +34,7 @@ The array elements are taken from a Standard Normal Distribution , having mean =
|
||||||
>>> s = np.random.normal(mu, sigma, p)
|
>>> s = np.random.normal(mu, sigma, p)
|
||||||
>>> count, bins, ignored = plt.hist(s, 30, normed=True)
|
>>> count, bins, ignored = plt.hist(s, 30, normed=True)
|
||||||
>>> plt.plot(bins , 1/(sigma * np.sqrt(2 * np.pi)) *np.exp( - (bins - mu)**2 / (2 * sigma**2) ),linewidth=2, color='r')
|
>>> plt.plot(bins , 1/(sigma * np.sqrt(2 * np.pi)) *np.exp( - (bins - mu)**2 / (2 * sigma**2) ),linewidth=2, color='r')
|
||||||
>>> plt.show()
|
>>> plt.show()
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -52,15 +52,15 @@ The array elements are taken from a Standard Normal Distribution , having mean =
|
||||||
|
|
||||||
--
|
--
|
||||||
|
|
||||||
## Plotting the function for Checking 'The Number of Comparisons' taking place between Normal Distribution QuickSort and Ordinary QuickSort
|
## Plotting the function for Checking 'The Number of Comparisons' taking place between Normal Distribution QuickSort and Ordinary QuickSort
|
||||||
|
|
||||||
```python
|
```python
|
||||||
>>>import matplotlib.pyplot as plt
|
>>>import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
|
||||||
# Normal Disrtibution QuickSort is red
|
# Normal Disrtibution QuickSort is red
|
||||||
>>> plt.plot([1,2,4,16,32,64,128,256,512,1024,2048],[1,1,6,15,43,136,340,800,2156,6821,16325],linewidth=2, color='r')
|
>>> plt.plot([1,2,4,16,32,64,128,256,512,1024,2048],[1,1,6,15,43,136,340,800,2156,6821,16325],linewidth=2, color='r')
|
||||||
|
|
||||||
#Ordinary QuickSort is green
|
#Ordinary QuickSort is green
|
||||||
>>> plt.plot([1,2,4,16,32,64,128,256,512,1024,2048],[1,1,4,16,67,122,362,949,2131,5086,12866],linewidth=2, color='g')
|
>>> plt.plot([1,2,4,16,32,64,128,256,512,1024,2048],[1,1,4,16,67,122,362,949,2131,5086,12866],linewidth=2, color='g')
|
||||||
|
|
||||||
|
@ -73,4 +73,3 @@ The array elements are taken from a Standard Normal Distribution , having mean =
|
||||||
|
|
||||||
|
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user