Skip to main content

A package to make your life easy.

Project description

Geeeks - A simple and helpful package

Install/Upgrade our package

pip install geeeks # install
pip install --upgrade geeeks # upgrade

String Functions

  1. Reverse String: reverse(string)
from geeeks import StringFunctions as sf

my_string = "AnyRandomString"
rev = sf.reverse(my_string)

print(rev)
# Output: gnirtSmodnaRynA
  1. Make Link: make_link(string)
from geeeks import StringFunctions as sf

my_string = "Any Random String"
link = sf.make_link(my_string)

print(link)
# Output: any-random-string
  1. Swap Case: swap_case(string)
from geeeks import StringFunctions as sf

my_string = "Any Random String"
swap = sf.swap_case(my_string)
print(swap) # Output: aNY rANDOM sTRING
  1. Make Chunks: make_chunks(string,k)
from geeeks import StringFunctions as sf

my_string = "ABCDEFGHI"
k = 3

print(sf.make_chunks(my_string,k))
# Output: ['ABC','DEF','GHI']

Encryption & Decryption Techniques

  1. Caesar Cipher: caesarCipher(s=string(), key=int())
from geeeks import Encryption as encrypt
from geeeks import Decryption as decrypt

string = "this-is-my-secret-message"
key = 4

cipher = encrypt.caesarCipher(string, key)
print(cipher) # Output: xlmw-mw-qc-wigvix-qiwweki

message = decrypt.caesarCipher(cipher, key)
print(message) # Output: this-is-my-secret-message

Advance Algorithms

Divide & Conquer Algorithms

This package (geeeks.DnC_Algo) contains the following functions:

  • binary_search(arr, x, low, high)
  • bubble_sort(arr)
  • merge_sort(arr, low, high)
  • min_max(arr, low, high)
  • quick_sort(arr, low, high)
  1. Binary Search
from geeeks import DnC_Algo as dnc

arr = [1,2,3,4,5]
x = 4 # Element to search
low = 0 # lowest index
high = len(arr)-1 # maximum index

res = dnc.binary_search(arr, x, low, high)
if res != -1:
    print(f"Element is present at index: {res}")
else:
    print("Element is not present in array!")
  1. Bubble Sort
from geeeks import DnC_Algo as dnc

arr = [12,9,87,6,43,55,34]
print(dnc.bubble_sort(arr))
  1. Merge Sort
from geeeks import DnC_Algo as dnc

arr = [1,2,3,4,5]
low = 0 # lowest index
high = len(arr) # maximum index

print(arr)
dnc.merge_sort(arr, low, high)
print(arr)
  1. Minimum & Maximum
from geeeks import DnC_Algo as dnc

arr = [34, 67, 78, 45]
low = 0
high = len(arr) - 1 # maximum index
minimum, maximum = dnc.min_max(arr, low, high)
print(f"Maximum: {maximum}\nMinimum: {minimum}")
  1. Quick Sort
from geeeks import DnC_Algo as dnc

arr = [10,9,8,7,6]
low = 0
high = len(arr)-1

print("Before quick sort: {}".format(arr))
dnc.quick_sort(arr, low, high)
print("After quick sort: {}".format(arr))

Dynamic Programming Algorithms

This package (geeeks.DP_Algo) contains the following functions:

  • zero_one_knapsack(capacity, weight, profit)
  • coin_change(coins, amount)
  • longest_common_subsequence(str_a, str_b)
  • matrix_multiplication(arr)
  1. 0-1 Knapsack Problem
from geeeks import DP_Algo as dp

weight = [2, 3, 4, 5]
profit = [1, 2, 5, 6]
capacity = 8

dp.zero_one_knapsack(capacity, weight, profit)
  1. Coin Change Problem
from geeeks import DP_Algo as dp

coins = [2,5,10]
amount = 25
dp.coin_change(coins, amount)
  1. Longest Common Subsequence
from geeeks import DP_Algo as dp

A,B = list("algorithm"), list("analysis")
print(dp.longest_common_subsequence(A,B))
  1. Matrix Multiplication
from geeeks import DP_Algo as dp

arr=[1,2,3,4,1]
print(dp.matrix_multiplication(arr))

Graph Algorithms

This package (geeeks.Graph_Algo) contains the following functions:

  • dijkstra(graph)
  • floyd(graph, num_vertices)
  1. Dijkstra's Algorithm
from geeeks import Graph_Algo as gp

graph = [[0, 5, 8, 0], [5, 0, 10, 0], [8, 10, 0, 20], [0, 15, 20, 0]]
gp.dijkstra(graph)
  1. Floyd-Warshall Algorithm
from geeeks import Graph_Algo as gp
INF = 999
graph = [    [0, 3, INF, 7],
         [8, 0, 2, INF],
         [5, INF, 0, 1],
         [2, INF, INF, 0]]

gp.floyd(graph)

Greedy Algorithms

This package (geeeks.Greedy_Algo) contains the following functions:

  • fractional_knapsack(values, weight, max_capacity)
  • build_huffman_tree(arr, freq)
  • job_scheduling(arr)
  • prims_mst(graph)
  1. Fractional Knapsack
from geeeks import Greedy_Algo as gd

values = [280, 100, 120, 120]
weight = [40, 10, 20, 24]
max_capacity = 60
gd.fractional_knapsack(values, weight, max_capacity)
  1. Huffman Encoding Technique
from geeeks import Greedy_Algo as gd

arr = ['a','b','c','d','e','f']
freq = [40,30,20,5,3,2]
gd.build_huffman_tree(arr, freq)
  1. Job Scheduling
from geeeks import Greedy_Algo as gd

# follow this structure for the data
arr = [['j1', 5, 200],
       ['j2', 3, 180],
       ['j3', 3, 190],
       ['j4', 2, 300],
       ['j5', 4, 120],
       ['j6', 2, 100]
       ]

gd.job_scheduling(arr)
  1. Prim's Algorithm
from geeeks import Greedy_Algo as gd

graph = [[0,5,8,0],[5,0,10,0],[8,10,0,20],[0,15,20,0]]
print("MST acc. to Prim's is: {}".format(gd.prims_mst(graph)))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geeeks-0.1.5.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geeeks-0.1.5-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file geeeks-0.1.5.tar.gz.

File metadata

  • Download URL: geeeks-0.1.5.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for geeeks-0.1.5.tar.gz
Algorithm Hash digest
SHA256 0795b0c5c9827a10496bc4ca44b09856190b734ebc7629d909ca46e579941d2d
MD5 587d02fc149b6c5e44ba959ed745d441
BLAKE2b-256 d0039ea1e5b9cbc1b2461bffc7f99493ecb8a2401ab01d02869ca3bb29a11c3b

See more details on using hashes here.

File details

Details for the file geeeks-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: geeeks-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for geeeks-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 19abc595559ed345689f0996be777684a51b8e25a2d5e9af3575ad6c7efcf841
MD5 4b3161eed2d11d8053736bda77bd948b
BLAKE2b-256 1735ca1a665dac41b27f7e9a7d6cd1fa5bc1bdf3db6483631eaf11f65ebbc982

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page