Python

How is Python for Competitive Programming ?

Competitive programming is one the challenging milestone which we have to pass through . I have seen as we use C or C++ programming in college days ,  I mean beginning days . I agree with the facts that low level implementation of any algorithms gives the full control . But in the same time it takes so much of time  while code development .I know , It seems this discussion is more on high level language vs low language in competitive programming . But it is not completely true , We have are only going forward with Python capabilities . We will do some SWOT analysis ( Strength ,weakness , opportunities and threats ) with special reference to competitive programming . Basically we will see – How is Python for Competitive Programming ?

Python for Competitive Programming-

In order to understand the Python compatibility with Competitive programming , We need to understand the requirement associated with Competitive programming  . In order to address  the requirement of these Competitive programming  , We need to answer these questions-

  1. Can I implement LinkList , Doubly LinkList , Queue etc in Python or not ? If yes then How hard is the implementation ?
  2. Do I know the complexity of inbuilt python functions like sort etc ?
  3. How strong / Flexible is Python’s own data structure ?

So lets answer them –

  1. Yes It is easy to implement LinkList and similar data structure in python easily .
  2. Yes You may know the inbuilt function’s complexity . It may be documented in official release page or stack overflow searches .
  3. Python data structures are very fast and design in such a way that perform basic tasks like searching sorting efficiently .

Reasons to use Python for Competitive programming –

  1. Variable type independent language makes coding very easy for developer . See In other language like C , C ++ or java etc , We have to define the variable type . Here type check is performed by the interpreter itself . This reduce the implementation time by some extents .
  2. Enrich Library supports for basic operations like sort , count etc .
  3. List implementation in Python is really useful .It helps in finding the  last element without having the size details .
  4. If you explore list and other inbuilt data structure , You will not have to implement user define data structure mostly in many cases . As they it provide the inbuilt solution .
  5. Code readability is awesome in python .
  6. Function may return more than one data type . As it is quite different from general / traditional programming language .
  7. Python is not only applicable in algorithms /data structure programming but you may use it for data science , web development.
  8. Very strong open source community is behind the python language . You may easily get the error traces and solutions .

Conclusion –

So how did find this article – “How is Python for Competitive Programming ?” I think this motivate others for competitive programming if they are python developer . I love python for competitive programming because  its syntaxes are really easy . Loop and conditional statement are really developer friendly . If you get the leverage of inbuilt library function it saves tons of time while implementation . Every thing is dynamic which makes logic implementation easiest .

 Thanks

Data Science Learner Team