Debugging dua kali lebih keras dari menulis kode di tempat pertama.
Jika Anda memecahkan masalah yang terkait dengan Struktur Data & Algoritma (DSA), Anda tahu betapa frustasinya untuk men -debug struktur data yang kompleks seperti pohon biner dan grafik terarah.
LeetPy adalah paket python ringan yang membuat Anda lebih efisien saat Anda menyelesaikan masalah DSA. Ini berisi fungsi utilitas dan algoritma yang membuat debugging dan pengujian menjadi jauh lebih mudah. Berikut beberapa fitur:
LeetPy menyediakan fungsi print() yang nyaman yang menunjukkan kepada Anda seperti apa struktur Anda (semua di dalam terminal Anda!).LeetPy akan selalu berfungsi dengan benar. Untuk menginstal rilis stabil terbaru, jalankan:
$ pip install leetpyUntuk menginstal dari komit gitub terbaru:
pip install git+https://github.com/aryanpingle/leetpyInilah kasus penggunaan minimal:
# Create a random binary tree and visualize it
from leetpy import BinaryTree
root = BinaryTree . create ( n = 20 ) # create a random binary tree with 20 nodes
BinaryTree . print_structure ( root ) # visualize the binary treeDan inilah yang kompleks:
# Suppose you want to 'save' 10 binary search trees (example: for testing purposes)
# You would need some Python code that generates each tree exactly
from leetpy import BinaryTree
for i in range ( 1 , 11 ):
# Generate a random binary search tree (BST) with 20 nodes
# Each node should have a value between 1 and 10 (inclusive)
root = BinaryTree . create ( n = 20 , min_val = 1 , max_val = 10 , make_bst = True )
# Get the python code that generates this exact BST
# Oh, and make each node an object of class "CustomNode"
# Oh, and keep indentation to 2 spaces
code += " n " + BinaryTree . export_as_code ( root , node_alias = "CustomNode" , indent = 2 )
with open ( "testing.py" , "w" ) as f :
f . write ( code ) LeetPy menawarkan berbagai fungsi utilitas - untuk berbagai struktur data. Untuk daftar contoh penggunaan yang komprehensif, periksa /examples/readme.md.
LeetPy memiliki rencana untuk mendukung struktur data berikut:
Semua struktur data memiliki beberapa API umum:
create() -> structure - Untuk membuat struktur dengan data dan properti acak berdasarkan parameter tertentuexport_as_code(structure) -> str - untuk mendapatkan fungsi python3 independen yang ketika dipanggil, mengembalikan struktur data yang diberikanexport_as_svg(structure) -> None - untuk membuat file svg dengan visualisasi struktur data yang diberikanprint(structure) -> None - Untuk Mencetak Representasi Struktur Data ke Terminal