books / ways to learn data structures and algorithms? [closed] - ruby

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I'm a self taught Ruby on Rails engineer, and I'm looking to improve my CS understanding. However, most books about data structures and algorithms are written in Java/C/C++/etc, which I don't know. Is there text on these topics using Ruby? Or do you feel Java is similar enough to Ruby that I could survive through a book?
Is there any recommended text for someone coming from my background?
P.S. Recently I've been looking at Objective C, so I'm not completely blind to statically typed languages.

There's a bunch of books on algorithms that are not tied to specific language. Check
http://www.amazon.com/Algorithms-Sanjoy-Dasgupta/dp/0073523402
http://www.amazon.com/Introduction-Algorithms-Thomas-H-Cormen/dp/0262033844
I also recommend fundamental, still non-finished classics
http://www.amazon.com/Computer-Programming-Volumes-1-4A-Boxed/dp/0321751043

If you are jumping into Obj-C it might actually be very worth your time to learn C first. Objective C is very closely related to C minus the odd syntax of Obj-C. In that case you may want to consider K and R which is considered the bible of C to learn that first which will get you started with it to teach you the basics of C and data structures you can later expand on. Also, in case you are learning Objective C to program iOS you may want to be on the cutting edge and learn Swift since Apple is moving to Swift for the future. It is much easier actually and closer to Ruby!
Good luck.

Related

in the middle of finishing rubymonk, what next? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I'm posting this somewhat in frustration after going through Rubymonk. I've finished Codeacademy and am mid-way through Rubymonk. I feel like I am getting bits and pieces about Ruby but do not feel like I'm getting anywhere near feeling comfortable in building a Ruby program from scratch.
My question is, are there places on the web where I can read source codes for small projects as they progress from easy to hard? or exercises to use some of my knowledge in a progressively more difficult manner? I certainly feel like I should begin by building smaller programs, but still want somewhat of a guidance. Should I just try to build whatever I want to build?
Thank you,
There are lots of great resources for doing this. It sounds like you have some basic programming skills down, but it might not hurt to start with:
the online edition of Chris Pine's "Learn to Program."
Learn Ruby The Hard Way also gets good reviews, and is probably the closest to the spirit of what you're asking.
Code Quizzes has a Ruby track.
Ruby Quiz has a great back log of more complicated puzzle questions.
Project Euler is also a good puzzle problem resource, although it's not specifically for programming. The problems are very solvable with code, though, so it's a great source of inspiration.
Some code schools also have their curriculum online. Epicodus and Portland Code School are the ones I'm familiar with.
Hope that helps!

Detecting presence of music in ambient sound [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I hoping to create an application that would listen to ambient sound and detect if music is being played. It is not important to identify the music being played; just detecting that some music is being played is enough.
I looked around for existing solutions but couldn't find any. Does anyone know algorithms that I can use to solve this problem? If source code is available, all the better.
I found are a couple of academic papers and implemented solutions suggested in them. But the results I obtained were not satisfactory.
PS:
i) It would be a bonus if the algorithm is not computationally intensive; if algorithm is completely in time-domain that would be wonderful. ii) It is okay if the solution is not very accurate; occasional false-positives are okay.
Under the assumption that music is made of a bunch of chords instead of single pitch (like monophonic MIDI), multiple pitches at the same time (aka, the chords) may be a good candidate to be detected and differentiated from pure noise. Actually there is a very good Harmony Progression Analyser software package in which chords are detected based on a chromagram. Hope it helps.

Algorthms or data structure books in scheme [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
There are very good books on Data Structures and/or algorithms featuring languages like C, C++ or Python. A particular example is "Data Structures Using C and C++ by Yedidyah Langsam, Moshe J. Augenstein and Aaron M. Tenenbaum".
In similar vein, are there books on data structures and/or algorithms in scheme programming language?
To add to Chris Jester-Young's answer you have SICP as videoes lectures as well, taught by the authors of the book. It's worth the time! The Scheme standard has changed a little since then, but if you use DrRacket you may be interested in a SICP compatibility module which is really easy to install.
Purely functional data structures (PDF), also available as a book in book stores. It's language agnostic and the code of the book is in ML, but it says it can easily be ported to strict evaluation language, like Scheme.
Yes, Structure and Interpretation of Computer Programs, more commonly known as SICP.

Function Plotter [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
There is a nice function plotter built into OSX. Has anyone found something free that runs on windows (with out having to go through Cygwin)?
How about MathGV - Function Plotting Software?
Also, DME Calculator is a calculator that can plot functions.
The DME calculator is an advanced
calculator for Windows. It is a part
of the program package for controlling
our instruments. However, in its basic
version it can be of use for anyone
who wishes to make calculations with a
PC or wishes to solve somewhat more
complex problems without having to use
a large spreadsheet program package.
The DME calculator fits on a diskette
and starts without any notable waiting
time.
If by functions, you mean mathematical functions, there is a nice list here which has plenty of suggestions.
Wolframalpha.com
excellent for many branches of academia. it also plots.

making graphs with xCode [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
Hi I need to graph some arrays to analyse signals, I have a cocoa project going. Can anyone tell me where I can find tools to simplify this task?
Basically i want to display my arrays like on a graphing calculator.
Even though it's a young library, I'd suggest looking at the open source Core Plot framework. It works on Mac and iPhone and can currently plot line and bar charts. As I said, it's young and a lot of the core functionality is still being written, but it might work right now for your case.
Take a look at this post to the Apple mailing lists. http://lists.apple.com/archives/scitech/2007/Jun/msg00022.html
It mentions 3 potential graphing packages that you can try. I have not had personal experience with them, so buyer beware, but it will at least give you a start on where to look.
XCode allows you to create data formatters to present object data in the debugger, but it doesn't provide any way to graphically represent the data using charts or graphs. (At least, not that I know of!) I think that's beyond the scope of XCode. You might consider dumping the data from your array to a file using a bit of code or the console, and then loading it into Excel or MATLAB. Then you can create a graph of your signal with no problem.
Just out of curiosity, are you familiar with another IDE that provides graphs of array data? I know tools like MATLAB and Mathematica do it pretty nicely, but I've never seen it in an IDE.

Resources