Ibo_kudratov's blog

By Ibo_kudratov, history, 23 months ago, In English

When comparing programming languages, especially for competitive programming (CP), there's a clear winner: C++. Its efficiency, control over memory, and extensive STL (Standard Template Library) make it the go-to choice for top-rated users. Algorithms run faster, and intricate operations can be executed with minimal overhead. That’s why most competitive programmers swear by it.

However, no matter how good C++ is for CP, there are moments when it feels cumbersome, and I just want to switch to Python for its simplicity and elegance. For example, list comprehensions in Python are an absolute delight. With just a single line of code, you can perform complex operations on lists—something that would require several lines of loops and conditions in C++. It’s not just about saving keystrokes; it’s the readability and expressiveness that Python offers, making coding feel less like a chore and more like a creative process.

As an example, I’ve attached two photos of the quicksort algorithm implemented in both languages: Python and C++. The difference is striking.

cod

code

And I genuinely tried to write the C++ code in the simplest way possible, but even then, it remains much more verbose compared to Python.

  • Vote: I like it
  • 0
  • Vote: I do not like it

| Write comment?
»
23 months ago, hide # |
 
Vote: I like it +3 Vote: I do not like it

those codes are not equal, python one uses $$$O(n\log n)$$$ memory on average, and $$$O(n^2)$$$ at worst. c++ code is always $$$O(n)$$$ memory.

and with c++20 ranges you can achieve same code length as in python, if used correctly.