Skip to content

AniruddhNathani/Advanced-Data-Structures-with-Python

 
 

Repository files navigation

Advanced Data Structures with Python

This repository contains Data structures, Algorithms and their common usecases implemented by me in python. This repository is really helpful for those, who prefer to do competitive programming in python.

Contents:

Algorithms-

  • Dijkstra's Shortest Path Algorithm (Java + Python)
  • Kahn's Algorithm for Topological Sort
  • Depth First Search
  • Longest Common Subsequence (Java)
  • Longest Common Substring (Java)

Data Structures-

  • Segement Tree (For sum) (Java + Python)
  • Union Find Data Structures (Disjoint Set Data Structure)
  • Binary Search Tree

Learning Python ( the pythonic way)

Lambdas

lambda arguments : expression

List Comprehensions

number_list = [ x for x in range(20) if x % 2 == 0]

Class

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

p1 = Person("John", 36)

print(p1.name)
print(p1.age)

Map

map(function_object, iterable1, iterable2,...)

filter

filter(function_object, iterable)

Resources to Learn Python

Books, Vedios and Lecture Notes available in are available here - Learning Resources

Some Other Resources

  • Real Python
  • Python Jumpstart by Building 10 Apps
  • Learn Python the Hard Way
  • Code Academy: Learn Python
  • Code School: Learn Python
  • Python for Entrepreneurs
  • Intro to Python for Data Science
  • Automate the Boring Stuff with Python
  • Learn Python, it's Cake
  • BONUS: Practical Python and OpenCV

Contributing

This repository is open to contribution. Contributers are mentioned here:

  1. Bhavin Jawade
  2. Aniruddh Nathani

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

Self written codes for all famous algos, in python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 70.2%
  • Java 29.8%