Commit Graph

2236 Commits

Author SHA1 Message Date
Saurabh Goyal
5d20dbfb98 add a generic heap (#906)
* add a generic heap

* Delete __init__.py

* Rename data_structures/Heap/heap_generic.py to data_structures/heap/heap_generic.py

* Add doctests

* Fix doctests

* Fix doctests again
2019-11-30 06:17:13 +01:00
Christian Clauss
2fb6f786ce Typo in a comment (#1603) 2019-11-29 00:23:37 +05:30
ELNS
f4a7c5066c converting generator object to a list object (#1602)
* converting generator object to a list object

* Refactor: converting generator object to a list object

* fixup! Format Python code with psf/black push
2019-11-28 17:21:34 +01:00
Christian Clauss
4baf3972e1 GitHub Action to mark stale issues and pull requests (#1594) 2019-11-27 18:30:21 +08:00
ELNS
140b79b4b2 Adding Linear Discriminant Analysis (#1592)
* Adding new file to the machine_learning directory

* Adding initial documentation

* importing modules

* Adding Normal_gen function

* Adding Y_gen function

* Adding mean_calc function

* Adding prob_calc function

* Adding var_calc function

* Adding predict function

* Adding accuracy function

* Adding main function

* Renaming LDA file

* Adding requested changes

* Renaming some of functions

* Refactoring str.format() statements to f-string

* Removing unnecessary list objects inside two functions

* changing code style in some lines

* Fixing y_generator function

* Refactoring 'predict_y_values' function by using list comprehensions

* Changing code style in import statements

* Refactoring CLI code block

* fixup! Format Python code with psf/black push

* No lines longer than 88 characters
2019-11-26 12:57:53 +01:00
Vikas Kumar
0d3c9d586c Update singly_linked_list.py (#1593)
* Update singly_linked_list.py

printing current.data rather than node address in __repr__ for a more readable print statement

* eval(repr(c)) == c

The output of `__repr__()` _should look like a valid Python expression that could be used to recreate an object with the same value_.

https://docs.python.org/3.4/reference/datamodel.html#object.__repr__

* += --> +
2019-11-26 06:45:28 +01:00
achance6
2ad5a1f083 Implemented simple keyword cipher (#1589)
* Implemented simple keyword cipher

* Added documentation and improved input processing

* Allow object's hash function to be called

* added to string functionality

* reverted

* Revised according to pull request #1589

* Optimized imports

* Update simple_keyword_cypher.py

* Update hash_table.py
2019-11-23 16:52:32 +01:00
vansh bhardwaj
4c75f863c8 added current stock price (#1590)
* added current stock price

* Ten lines or less
2019-11-23 13:54:06 +01:00
BryanChan777
e09bf69648 Update README.md (#1588)
* Update README.md

* python -m unittest -v
2019-11-23 04:06:52 +01:00
Arun Babu PT
c5fd075f1e Fractional knapsack (#1524)
* Add files via upload

* Added doctests, type hints, f-strings, URLs

* Rename knapsack.py to fractional_knapsack.py

* Rename graphs/fractional_knapsack.py to dynamic_programming/fractional_knapsack_2.py
2019-11-22 22:55:19 +08:00
Christian Clauss
ec7bc7c7cd Tabs --> spaces in quine_mc_cluskey.py (#1426)
* Tabs --> spaces in quine_mc_cluskey.py

* fixup! Format Python code with psf/black push
2019-11-21 22:21:40 +08:00
Fakher Mokadem
e8aa81297a Update gaussian_filter.py (#1548)
* Update gaussian_filter.py

Changed embedded for loops with product. This way range(dst_height) is called only once, instead of being called $dst_height.

* Update gaussian_filter.py

fixed missing width
2019-11-20 11:06:32 +05:30
John Law
28c02a1f21
Improve bellman_ford.py (#1575)
* Fix out of range error in bellman_ford.py

* Update bellman_ford.py

* fixup! Format Python code with psf/black push

* Enhance the print function

* fixup! Format Python code with psf/black push
2019-11-19 13:52:55 -08:00
onlinejudge95
c57c4ca1a1 Adds operations for circular linked list (#1584)
* Adds, append, len, print operations for circular linked list

* Adds, prepend support

* Adds, delete from front of the list

* Adds, delete_rear support

* Adds, method documentations

* Adds, type checking and doctests

* Updates doctest for delete ops

* Addressing requested changes

* Removes unused import

* Fixes failing doctests

* Minor modifications...
2019-11-19 10:53:44 +01:00
Sarath Kaul
2565797504 Reverse Words (#1581)
* Word Occurence Script Added

* Word Occurence Script Updated

* Added doctest using collections.Counter

https://docs.python.org/3/library/collections.html#collections.Counter

* Reverse Word Script Added

* Reverse Word Script Added

* Reverse Word Script Added

* Reverse Word Script Added

* Word Occurence Script Added

* Reverse Word Script Added

* Reverse Word Script Added

* Reverse Words DocTest Updated

* Word Occurence Updated

* Doctest Updated

* Doctest Updated

* Doctest Updated
2019-11-18 12:47:26 +01:00
Himanshu Bhatnagar
0832e1ec58 Adding circular_queue.py (#1574)
* Create circular_queue.py

Circular Queue implementation using python list with fixed range.

* Update circular_queue.py

* Update circular_queue.py

* Update circular_queue.py

* Update circular_queue.py

* Update circular_queue.py

* doctest: Catch "Exception: UNDERFLOW"

* Deal with the fluent interface for cq.enqueue()

* Test the fluent interface
2019-11-17 19:59:50 +01:00
Mantas Zimnickas
12f69a86f5 Remove code with side effects from main (#1577)
* Remove code with side effects from main

When running tests withy pytest, some modules execute code in main scope
and open plot or browser windows.

Moves such code under `if __name__ == "__main__"`.

* fixup! Format Python code with psf/black push
2019-11-17 19:38:48 +01:00
Mantas Zimnickas
5616fa9e62 Add pytest-cov (#1578)
* Add pytest-cov

Also added coverage report in .travis.yml file.

* updating DIRECTORY.md

* Sort by missing statements

* sort = Cover
2019-11-17 19:37:58 +01:00
Sarath Kaul
9a894ebc52 Word Occurence Script Added (#1576)
* Word Occurence Script Added

* Word Occurence Script Updated

* Added doctest using collections.Counter

https://docs.python.org/3/library/collections.html#collections.Counter
2019-11-17 12:57:26 +01:00
Christian Clauss
b838f1042c Fix indentation contains tabs (flake8 E101,W191) (#1573) 2019-11-15 23:05:00 -08:00
Christian Clauss
dbaedd4ed7 || true (#1572)
*  ||  true

* 3.8

* python: 3.x
2019-11-14 18:22:23 -08:00
Ankur Chattopadhyay
a7424cc115 changed implementation of GitHub action to auto update DIRECTORY.md (#1571)
* changed implementation of GitHub action to auto update DIRECTORY.md

* updating DIRECTORY.md
2019-11-14 21:30:35 +01:00
Sarath Kaul
e3f55aecce Remove Duplicate Script Added (#1570)
* Added Remove duplicate script and updated requirements.txt

* Requirements.txt Updated

* Remove Duplicate Script Added

* Directory Modified

* Directory.md Updated
2019-11-14 21:01:51 +01:00
Zizhou Zhang
e3aa0f65e8 fix implementation errors. (#1568)
I revised my implementation and found out that I have miss a inner loop for t.  x and y should be recalculated everytime when t is divisble by 2. I have also included a more readble source for this algorithm.
2019-11-14 20:29:54 +01:00
Marvin M. Michum
ea9bf0a90c directory_writer (#1) (#1549)
* directory_writer

* fixup: Format Python code with psf/black

* fixup: DIRECTORY.md
2019-11-14 20:27:31 +01:00
Christian Clauss
5df8aec66c
GitHub Action formats our code with psf/black (#1569)
* GitHub Action formats our code with psf/black

@poyea Your review please.

* fixup! Format Python code with psf/black push
2019-11-14 19:59:43 +01:00
jwmneu
52cf668617 add sol3 to project_euler/problem_08 (#1557)
* Add sol3 for project_euler proble_03

* Update sol3.py

add type hint 
remove unused variable

* Format code with psf/black

* add sol3 to project_euler/problem_08, modify the stepsize of the loop,will be faster than sol1
2019-11-14 19:08:07 +01:00
Sarath Kaul
dd7d2fa270 Panagram Script Added (#1564)
* Python Program that fetches top trending news

* Python Program that fetches top trending news

* Revisions in Fetch BBC News

* psf/black Changes

* Python Program to send slack message to a channel

* Slack Message Revision Changes

* Python Program to check Palindrome String

* Doctest Added

* Python Program to check whether a String is Panagram or not

* Python Program to check whether a String is Panagram or not

* Check Panagram Script Added

* Panagram Script Added

* Anagram Script Changes

* Anagram Alphabet Check Added

* Python Program to fetch github info
2019-11-14 11:22:07 +01:00
Christian Clauss
fa6331aa82 Moved to TheAlgorithms/Jupyter (#1563)
https://github.com/TheAlgorithms/Jupyter/tree/master/other
2019-11-13 21:26:29 -08:00
Sarath Kaul
b7e37a856f Added a new Python script and some changes in existing one (#1560)
* Python Program that fetches top trending news

* Python Program that fetches top trending news

* Revisions in Fetch BBC News

* psf/black Changes

* Python Program to send slack message to a channel

* Slack Message Revision Changes
2019-11-12 12:11:54 +01:00
Sarath Kaul
5ac4391420 Python Program that fetches top trending news (#1559)
* Python Program that fetches top trending news

* Python Program that fetches top trending news

* Revisions in Fetch BBC News
2019-11-12 09:27:38 +01:00
JakobZhao
82a11d7f31 Fix bug in bellman_ford.py (#1544) 2019-11-10 17:01:38 +08:00
Hanif Ali
4c37eb7d07 Improved on Singly Linked List Programs (#1558)
* Improved Singly Linked List
Added String Representations of Nodes and Linked Lists
Added support for indexing and changing of Node data using indices.

* Added a few comments to Linked Lists

* Reformatted to conform to PEP8

* Added from_sequence.py
Convert a Python List to Linked List comprising of Nodes and return head.

* Added print_reverse.py
Recursive program to print the elements of a Linked List in reverse.

* Change 'is not None' for more Pythonicness
2019-11-10 09:47:04 +01:00
Zizhou Zhang
db515e585e added rsa_factorization.py (#1556)
* added RSA_factorization.py

This algorithm can effectively factor RSA large prime N given public key e and private key d.

* Rename RSA_factorization.py to rsa_factorization.py

* Add definitions for d, e, and N
2019-11-09 15:02:30 +01:00
jwmneu
ad2db80f8a Add sol3 for project_euler problem_03 (#1553)
* Add sol3 for project_euler proble_03

* Update sol3.py

add type hint 
remove unused variable

* Format code with psf/black
2019-11-07 09:37:28 +01:00
John Law
a9d5378ce2
Doctest and typing for longest_increasing_subsequence.py (#1526)
* Update longest_increasing_subsequence.py

* Update longest_increasing_subsequence.py

* Format longest_increasing_subsequence.py to PEP8

* Update longest_increasing_subsequence.py
2019-11-05 02:06:16 +08:00
Marvin M. Michum
5452e94528 Porta cipher (#1550)
* directory_writer

* add porta cipher for #1492

* formatting and one line comprehensions

* remove directory_writer

* indentions

* Wrap long lines
2019-11-04 08:45:29 +01:00
Du YuanChao
8c443ccfad add floor() (#1551)
* ceil and floor

* ceil and floor
2019-11-04 08:28:51 +01:00
vinayak
0e3357ae35
added solution 1 for problem_99 in project_euler (#1545)
* Create sol1.py

* Create __init__.py

* Update sol1.py

* corrected range

* Add files via upload

* Update DIRECTORY.md

* Create sol1.py

* Update sol1.py

* Create __init__.py

* Update DIRECTORY.md

* Delete isotonic.py

* Update sol1.py

* Problem_27_project_euler

* project_euler/Problem_27/sol1.py

* project_euler/Problem_27/sol1.py

* project_euler/problem_27/

* project_euler/problem_27

* project_euler/problem_27

* update sol1 of Euler Problem 27 solution script Added

* Remove slow test, wrap long comments, format with psf/black

* Delete __init__.py

* Add type hints

* Add doctests to function is_prime()

* Rename project_euler/problem_27/project_euler/problem_27/sol1.pysol1.py to project_euler/problem_27/problem_27_sol1.py

* Added Problem 33

* added solution 1 for problem_99

* update added solution 1 for problem_99

* update

* Update sol1.py
2019-11-01 13:57:16 +05:30
Marvin M. Michum
8107548cc1 Travis CI: Write & print DIRECTORY.md on one line (#1542)
* travis test

* travis pull ID test

* get pr branch test

* retry pr build

* test pushing back - probable git error for origin 'not found'

* github auth?

* add .sh

* chmod

* add index update for permission fix

* run sh for script

* add all

* add pull directory

* fetch pr branch

* swap placement of adding commits

* rotate

* quit trying to update Travis

* formatting leftovers

* Travis CI: Write & print DIRECTORY.md on one line
2019-11-01 04:06:20 +01:00
Jonathan Alberth Quispe Fuentes
7bc0462e79 Non-recursive Segment Tree implementation (#1543)
* Non-recursive Segment Tree implementation

* Added type hints and explanations links
2019-11-01 04:00:46 +01:00
Metehan
62e51fe487 recursive quick sort (#1536)
* recursive quick sort

* recursive quick sort

* Delete recursive-quick-sort

* Update recursive-quick-sort.py
2019-10-31 19:49:25 +01:00
Taufik Algi F
c717f8d860 add max sum contigous subsequence (#1537)
* add max sum contigous subsequence

* fix typo

* Add doctest and type hints

* Create autoblack.yml
2019-10-31 18:45:01 +01:00
Du YuanChao
814750e637 update factorial (#1535)
* update factorial

* update factorial
2019-10-31 13:45:32 +01:00
Charley
80e1c8748a Added Problem 33 (#1440)
* Create sol1.py

* Create __init__.py

* Update sol1.py

* corrected range

* Update sol1.py
2019-10-31 17:50:39 +05:30
Du YuanChao
6d44cdd315 perfect square (#1534)
* perfect square

* perfect square
2019-10-31 12:33:40 +01:00
RitwickGhosh
8a5633a233 Euler Problem 27 solution script Added (#1466)
* Add files via upload

* Update DIRECTORY.md

* Create sol1.py

* Update sol1.py

* Create __init__.py

* Update DIRECTORY.md

* Delete isotonic.py

* Update sol1.py

* Problem_27_project_euler

* project_euler/Problem_27/sol1.py

* project_euler/Problem_27/sol1.py

* project_euler/problem_27/

* project_euler/problem_27

* project_euler/problem_27

* update sol1 of Euler Problem 27 solution script Added

* Remove slow test, wrap long comments, format with psf/black

* Delete __init__.py

* Add type hints

* Add doctests to function is_prime()

* Rename project_euler/problem_27/project_euler/problem_27/sol1.pysol1.py to project_euler/problem_27/problem_27_sol1.py
2019-10-31 08:19:10 +01:00
John Law
357dbd4ada
Doctest, type hints and bug in LIS_O(nlogn) (#1525)
* Update longest_increasing_subsequence_o(nlogn).py

* Update longest_increasing_subsequence_o(nlogn).py
2019-10-31 01:06:07 +08:00
percy07
df95f43907 Update quick_select.py (#1523)
* Update quick_select.py

Add Doctests.

* Add typehints

* Don't pre-allocate "smaller" and "larger"
2019-10-30 16:10:30 +01:00
Sri Suma
fc533a7598 Simplified DES (#1382)
* Simplified DES

* Add files via upload

Diffie Hellman algorithm to generate a secret key.

* Update sdes.py

* Format code with psf/black and add doctests
2019-10-30 12:52:20 +01:00