mirror of
https://github.com/TheAlgorithms/Python.git
synced 2025-01-18 16:27:02 +00:00
Fixed LGTM and typehint (#3970)
* fixed LGTM fixed typehint * updating DIRECTORY.md * Update lucas_series.py * Update lucas_series.py Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Co-authored-by: John Law <johnlaw.po@gmail.com>
This commit is contained in:
parent
8cafadd759
commit
bfb0c3533d
12
DIRECTORY.md
12
DIRECTORY.md
|
@ -26,6 +26,8 @@
|
|||
|
||||
## Bit Manipulation
|
||||
* [Binary And Operator](https://github.com/TheAlgorithms/Python/blob/master/bit_manipulation/binary_and_operator.py)
|
||||
* [Binary Count Setbits](https://github.com/TheAlgorithms/Python/blob/master/bit_manipulation/binary_count_setbits.py)
|
||||
* [Binary Count Trailing Zeros](https://github.com/TheAlgorithms/Python/blob/master/bit_manipulation/binary_count_trailing_zeros.py)
|
||||
* [Binary Or Operator](https://github.com/TheAlgorithms/Python/blob/master/bit_manipulation/binary_or_operator.py)
|
||||
* [Binary Xor Operator](https://github.com/TheAlgorithms/Python/blob/master/bit_manipulation/binary_xor_operator.py)
|
||||
* [Single Bit Manipulation Operations](https://github.com/TheAlgorithms/Python/blob/master/bit_manipulation/single_bit_manipulation_operations.py)
|
||||
|
@ -47,7 +49,7 @@
|
|||
* [Atbash](https://github.com/TheAlgorithms/Python/blob/master/ciphers/atbash.py)
|
||||
* [Base16](https://github.com/TheAlgorithms/Python/blob/master/ciphers/base16.py)
|
||||
* [Base32](https://github.com/TheAlgorithms/Python/blob/master/ciphers/base32.py)
|
||||
* [Base64 Cipher](https://github.com/TheAlgorithms/Python/blob/master/ciphers/base64_cipher.py)
|
||||
* [Base64 Encoding](https://github.com/TheAlgorithms/Python/blob/master/ciphers/base64_encoding.py)
|
||||
* [Base85](https://github.com/TheAlgorithms/Python/blob/master/ciphers/base85.py)
|
||||
* [Beaufort Cipher](https://github.com/TheAlgorithms/Python/blob/master/ciphers/beaufort_cipher.py)
|
||||
* [Brute Force Caesar Cipher](https://github.com/TheAlgorithms/Python/blob/master/ciphers/brute_force_caesar_cipher.py)
|
||||
|
@ -101,6 +103,7 @@
|
|||
* [Decimal To Octal](https://github.com/TheAlgorithms/Python/blob/master/conversions/decimal_to_octal.py)
|
||||
* [Hexadecimal To Decimal](https://github.com/TheAlgorithms/Python/blob/master/conversions/hexadecimal_to_decimal.py)
|
||||
* [Molecular Chemistry](https://github.com/TheAlgorithms/Python/blob/master/conversions/molecular_chemistry.py)
|
||||
* [Octal To Decimal](https://github.com/TheAlgorithms/Python/blob/master/conversions/octal_to_decimal.py)
|
||||
* [Prefix Conversions](https://github.com/TheAlgorithms/Python/blob/master/conversions/prefix_conversions.py)
|
||||
* [Roman To Integer](https://github.com/TheAlgorithms/Python/blob/master/conversions/roman_to_integer.py)
|
||||
* [Temperature Conversions](https://github.com/TheAlgorithms/Python/blob/master/conversions/temperature_conversions.py)
|
||||
|
@ -207,6 +210,7 @@
|
|||
* [Heaps Algorithm Iterative](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/heaps_algorithm_iterative.py)
|
||||
* [Inversions](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/inversions.py)
|
||||
* [Kth Order Statistic](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/kth_order_statistic.py)
|
||||
* [Max Difference Pair](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/max_difference_pair.py)
|
||||
* [Max Subarray Sum](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/max_subarray_sum.py)
|
||||
* [Mergesort](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/mergesort.py)
|
||||
* [Peak](https://github.com/TheAlgorithms/Python/blob/master/divide_and_conquer/peak.py)
|
||||
|
@ -243,6 +247,9 @@
|
|||
* [Subset Generation](https://github.com/TheAlgorithms/Python/blob/master/dynamic_programming/subset_generation.py)
|
||||
* [Sum Of Subset](https://github.com/TheAlgorithms/Python/blob/master/dynamic_programming/sum_of_subset.py)
|
||||
|
||||
## Electronics
|
||||
* [Ohms Law](https://github.com/TheAlgorithms/Python/blob/master/electronics/ohms_law.py)
|
||||
|
||||
## File Transfer
|
||||
* [Receive File](https://github.com/TheAlgorithms/Python/blob/master/file_transfer/receive_file.py)
|
||||
* [Send File](https://github.com/TheAlgorithms/Python/blob/master/file_transfer/send_file.py)
|
||||
|
@ -804,6 +811,7 @@
|
|||
* [Gnome Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/gnome_sort.py)
|
||||
* [Heap Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/heap_sort.py)
|
||||
* [Insertion Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/insertion_sort.py)
|
||||
* [Intro Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/intro_sort.py)
|
||||
* [Iterative Merge Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/iterative_merge_sort.py)
|
||||
* [Merge Insertion Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/merge_insertion_sort.py)
|
||||
* [Merge Sort](https://github.com/TheAlgorithms/Python/blob/master/sorts/merge_sort.py)
|
||||
|
@ -877,6 +885,8 @@
|
|||
* [Get Imdb Top 250 Movies Csv](https://github.com/TheAlgorithms/Python/blob/master/web_programming/get_imdb_top_250_movies_csv.py)
|
||||
* [Get Imdbtop](https://github.com/TheAlgorithms/Python/blob/master/web_programming/get_imdbtop.py)
|
||||
* [Instagram Crawler](https://github.com/TheAlgorithms/Python/blob/master/web_programming/instagram_crawler.py)
|
||||
* [Instagram Pic](https://github.com/TheAlgorithms/Python/blob/master/web_programming/instagram_pic.py)
|
||||
* [Recaptcha Verification](https://github.com/TheAlgorithms/Python/blob/master/web_programming/recaptcha_verification.py)
|
||||
* [Slack Message](https://github.com/TheAlgorithms/Python/blob/master/web_programming/slack_message.py)
|
||||
* [Test Fetch Github Info](https://github.com/TheAlgorithms/Python/blob/master/web_programming/test_fetch_github_info.py)
|
||||
* [World Covid19 Stats](https://github.com/TheAlgorithms/Python/blob/master/web_programming/world_covid19_stats.py)
|
||||
|
|
|
@ -3,7 +3,7 @@ https://en.wikipedia.org/wiki/Lucas_number
|
|||
"""
|
||||
|
||||
|
||||
def recursive_lucas_number(n):
|
||||
def recursive_lucas_number(n_th_number: int) -> int:
|
||||
"""
|
||||
Returns the nth lucas number
|
||||
>>> recursive_lucas_number(1)
|
||||
|
@ -19,17 +19,19 @@ def recursive_lucas_number(n):
|
|||
...
|
||||
TypeError: recursive_lucas_number accepts only integer arguments.
|
||||
"""
|
||||
if n == 1:
|
||||
return n
|
||||
if n == 0:
|
||||
return 2
|
||||
if not isinstance(n, int):
|
||||
if not isinstance(n_th_number, int):
|
||||
raise TypeError("recursive_lucas_number accepts only integer arguments.")
|
||||
if n_th_number == 0:
|
||||
return 2
|
||||
if n_th_number == 1:
|
||||
return 1
|
||||
|
||||
return recursive_lucas_number(n - 1) + recursive_lucas_number(n - 2)
|
||||
return recursive_lucas_number(n_th_number - 1) + recursive_lucas_number(
|
||||
n_th_number - 2
|
||||
)
|
||||
|
||||
|
||||
def dynamic_lucas_number(n: int) -> int:
|
||||
def dynamic_lucas_number(n_th_number: int) -> int:
|
||||
"""
|
||||
Returns the nth lucas number
|
||||
>>> dynamic_lucas_number(1)
|
||||
|
@ -45,14 +47,10 @@ def dynamic_lucas_number(n: int) -> int:
|
|||
...
|
||||
TypeError: dynamic_lucas_number accepts only integer arguments.
|
||||
"""
|
||||
if not isinstance(n, int):
|
||||
if not isinstance(n_th_number, int):
|
||||
raise TypeError("dynamic_lucas_number accepts only integer arguments.")
|
||||
if n == 0:
|
||||
return 2
|
||||
if n == 1:
|
||||
return 1
|
||||
a, b = 2, 1
|
||||
for i in range(n):
|
||||
for i in range(n_th_number):
|
||||
a, b = b, a + b
|
||||
return a
|
||||
|
||||
|
@ -62,7 +60,6 @@ if __name__ == "__main__":
|
|||
|
||||
testmod()
|
||||
n = int(input("Enter the number of terms in lucas series:\n").strip())
|
||||
n = int(input("Enter the number of terms in lucas series:\n").strip())
|
||||
print("Using recursive function to calculate lucas series:")
|
||||
print(" ".join(str(recursive_lucas_number(i)) for i in range(n)))
|
||||
print("\nUsing dynamic function to calculate lucas series:")
|
||||
|
|
Loading…
Reference in New Issue
Block a user