Another great resource I highly recommend: https://www.manning.com/books/grokking-algorithms
I think a much better and free alternative is:
http://interactivepython.org/runestone/static/pythonds/index...
31–40 of 163 posts
Another great resource I highly recommend: https://www.manning.com/books/grokking-algorithms
I think a much better and free alternative is:
http://interactivepython.org/runestone/static/pythonds/index...
Which is great, except it takes you to the main list of subject matters, and algorithms isn't in there.
So I'm not able to view this link on my iPad unless I uninstall KA?
Not just the everyday examples of what constitutes an algorithm, but the voice, presentation, etc.
The follow up to that is understanding what you're counting and why, i.e. branches v.s. statements v.s. dereferences v.s. logical I/Os v.s. physical I/Os ...
Im making an explicit opinion that python is no better than any other language for implementing algorithms. HN please prove me wrong in an objective way so we may all learn?
This is an excellent course and helped me get my current job. My background is chemistry/chemical engineering. I had applied for a data scientist position. Phone interview included a problem where I was asked about my solution's complexity. I admitted I didn't know about it. Still got called back for an interview on site, but the weekend before I powered through this course. Unsurprisingly, it came up in the on-site…
Python is the algorithm king as far as I'm concerned. It really gets out of your way and lets you focus on the abstract nature of what you're trying to accomplish.
Done well it looks amazing, elegant, and efficient, but in the wrong hands you'll lose your hands.
why python???? ... any language with functions will do. I mean just create a java class with all public static functions if you want it to work like python (global functions). Its really language agnostic. Your answer will be a number a string or a list of things. All languages can do that. Im making an explicit opinion that python is no better than any other language for implementing algorithms. HN please prove me w…
it will. and this person chose python.
> HN please prove me wrong in an objective way so we may all learn?
no one cares about the choice of language. This is about learning algorithms.
as someone who doesn't know much about this and is trying to join the tech community, what will I achieve through this?
mylist = ['a','b','c','d'].
if 'd' in mylist:
...
This works just fine, however, the time it takes, to find the item, grows proportional to the number of items in the list. If your list grows to 1000 items, and the item you are searching for is positioned last, python will check 1000 times. This is known as O(N).Now, how does the performance compare, when using a set data structure?
myset = ('a','b','c','d')
if 'd' in myset:
...
Well, underneath the hood, the set stores the data in what's known as a hash. The time it takes to check if an item is (or isn't) in a list does not grow proportional to the number of items in the list—it's always constant: O(1).Earlier quoted context omitted.
Python is the algorithm king as far as I'm concerned. It really gets out of your way and lets you focus on the abstract nature of what you're trying to accomplish.
If Python is the king, C is the court jester juggling knives. Done well it looks amazing, elegant, and efficient, but in the wrong hands you'll lose your hands.
Earlier quoted context omitted.
Python is the algorithm king as far as I'm concerned. It really gets out of your way and lets you focus on the abstract nature of what you're trying to accomplish.
If Python is the king, C is the court jester juggling knives. Done well it looks amazing, elegant, and efficient, but in the wrong hands you'll lose your hands.