Data structures and Algorithms
DL Neil
PythonList at DancesWithMice.info
Tue Jun 30 13:34:58 EDT 2020
On 1/07/20 1:18 AM, Richard Damon wrote:
> On 6/30/20 8:26 AM, Cameron Simpson wrote:
>> On 30Jun2020 10:52, satyaprasad <satyaprasad at mail.g> wrote:
>>> Hi, I am currently in learning process of python have been worked on
>>> some desktop application using pyqt . I want improve my DSA area but i
>>> searched so many videos mot sure how to start . 1.Do i really need learn
>>> datastructures in c or c++ to get complete logical details. 2 .or shall
>>> i start learn using python itself then where to start . Can some one
>>> give me a road map for DSA with python.
>> In my opinion you are better off using Python. In C and (less so) in C++
>> there is a lot of cruft around managing memory and allocating sizes, not
>> to mention additional verbiage. In Python you are far freer to
>> concentrate on the data structures and algorithms themselves.
>>
>> Maybe start here:
>>
>> https://duckduckgo.com/html?q=python%20data%20structures%20and%20algorithms%20tutorials
>>
>> Cheers,
>> Cameron Simpson <cs at cskk.id.au>
>
> I would disagree a bit here, a lot depends on WHY and WHAT you want to
> learn about Data Structures and Algorithms. A lot of learning Data
> Structures is learning to understand the actual typical structure of the
> Data Structure, and seeing the explicit pointers can be helpful here.
>
> Python may be better for the Algorithms side, where hiding some of the
> gritty detail can be more useful, though that hiding might obscure some
> details if you want to think about what is the complexity of an operation.
Yes, there's quite a bit of room for discussing what to learn and why
one might want to learn such; expanding into 'what is ComSc' and why/how
might learning such topics benefit a professional programmer (or
specialist in one particular arena); and the list goes on...
For decades I have lusted (well, almost) for a copy of Knuth's library
(but it is NOT a training resource). However, I also reflect that a lot
of our study as u/grads, eg learning and comparing multiple sorting
algorithms; is almost irrelevant these days, and with Python - sort() is
at-least 'good enough' for 99% of (my) in-RAM applications.
(and Knuth started his collection of algorithms in the 1960s, IIRC)
To the OP: recommending you view both Coursera.org and edX.org. The
likes of Georgia Tech and U.Mich[igan] offer series of courses using
Python as their illustration language. In combination with increasing
your Python skills, you will thus be able to follow a structured series,
or to pick-and-choose from their syllabi to suit your particular
needs/interests.
Courses are usually chargeable, but most can be "audited" for $free (you
might have to wind through the dialog-boxes, and will likely not be able
to submit exams/assignments for consideration)
(Disclosure: I train using edX - but not in Python)
--
Regards =dn
More information about the Python-list
mailing list