Jeff Erickson's Algorithms Course Materials (compgeom.cs.uiuc.edu)

submitted 6 months ago by davidk01

**ComicStix** asked:

I'm a freshman Computer Science student and we just started doing some actual projects in Python. I have found I'm very efficient when I use the pen and paper method that my professor suggested in class. But when I can't write my problem down and work my algorithms out on paper I am really slow. During labs, I always seem to have to take the assignment back to my dorm. When I get there and write it out I solve the problem that took me the whole class in like 5 minutes.

Maybe it's because I get stressed seeing people solving labs before me. Or maybe it's the pen and paper method.

I was browsing through forums and someone wrote that if you have to write your programs on paper then you shouldn't be a programmer. I'm really worried because I'm so much better when I can see what the program is doing and track my way through it before typing actual code. Am I doing something wrong?

*See the original question here.*

Stack Exchange

*This Q&A is part of a weekly series of posts highlighting common questions encountered by technophiles and answered by users at Stack Exchange, a free, community-powered network of 100+ Q&A sites.*

It's a response often encountered during technical interviews: "OK, you solved the problem with a while loop, now do it with recursion." Or vice versa. Stack Exchange user Shivan Dragon has encountered the problem and he knows how to answer: show that you're able to code both ways. Give the interviewer what he wants. But which method is generally preferable? A few more experienced programmers respond.

*See the original question here.*

Read 19 remaining paragraphs | Comments

- Algorithm
- Ars Technica
- Computer programming
- Computing
- ESPN
- Functional programming
- Google Wallet card Tablets
- Haskell
- Infinite loop
- information technology
- John Steele
- Mathematical logic
- open Web
- Programming idioms
- prospective employer
- Recursion
- recursive algorithm
- recursive algorithm
- Software engineering
- Stack Exchange
- Subroutines
- Tail call
- Technology Lab
- Technology Lab
- Theoretical computer science
- typical computer systems
- wireless data caps

Dr. Tom Murphy VII gave a research paper called "The First Level of Super Mario Bros. is Easy with Lexicographic Orderings and Time Travel . . . after that it gets a little tricky," (PDF) (source code) at SIGBOVIK 2013, in which he sets out a computational method for solving classic NES games. He devised two libraries for this: *learnfun* (learning fuction) and *playfun* (playing function). In this accompanying video, he chronicles the steps and missteps he took getting to a pretty clever destination.

learnfun & playfun: A general technique for automating NES games (*via O'Reilly Radar*)

- Algorithm
- Application software
- Arcade games
- Chinese room
- computer science
- copyfight
- Digital media
- Electronic games
- Games
- Happy Mutants
- Mario Kart
- mind-information processing dualism
- Old school
- playfun algorithm
- playfun algorithm
- scholarship
- search algorithm
- search algorithm
- Super Mario Bros.
- Technology
- Tetris
- Tetris Company
- The Tetris Company
- Tom Murphy VII
- Tyler
- video
- Videos
- youtube

Large parts of our lives are now being monitored and analysed by computers. Log on to Amazon and intelligent data analysis software can recommend a selection of books you might like to read. Far from being a sinister intrusion into people's privacy, the purpose of these systems is to improve our lives, experts say.

- adaptive algorithms
- airline
- Algorithm
- Bogdan Gabrys
- Bournemouth University
- BT
- BU's Smart Technology Research Centre
- Business intelligence
- communications industries
- Computational Intelligence Systems
- Economic model
- Insurance
- intelligent software
- intelligent systems
- Lufthansa Systems
- Nature
- optimisation algorithms
- optimisation algorithms
- prediction software
- Predictive analytics
- Smart Technology Research Centre
- Technology
- US Federal Reserve

For the average human web crawler, the algorithms that power what is searched and seen on the web seem to be black boxes of magical machinery — but there's usually a meat-based observer pulling some strings behind the scenes. As *The New York Times *observes, computer algorithms are increasingly being guided with a human touch, necessary for giving subtle context for human language that can elude even the most powerful machines like IBM's Watson. Even Twitter, the *Times *reports, "uses a far-flung army of contract workers" to interpret trending search terms; these Twitter "judges" were able, for example, to recognize that Mitt Romney's comments about "Big Bird" during last year's presidential debate were about politics and not really...

- Algorithm
- Amazon
- basic algorithm
- basic algorithm
- basic data mining techniques
- Bayesian statistics
- Creative Commons
- Data mining
- data mining
- data mining
- data mining techniques
- data mining textbooks
- Naive Bayes classifier
- online version
- Pearson
- Python
- recommendation systems
- Recommender system
- Ron Zacharski
- Statistical classification
- Statistics
- Technology

An anonymous reader sends this excerpt from a UC Berkeley news release: "Our eyes may be our window to the world, but how do we make sense of the thousands of images that flood our retinas each day? Scientists at the University of California, Berkeley, have found that the brain is wired to put in order all the categories of objects and actions that we see. They have created the first interactive map of how the brain organizes these groupings."

Read more of this story at Slashdot.

I came across this paper: http://www.edbt.org/Proceedings/2012-Berlin/papers/edbt/a36-zhou.pdf while doing a course on SNA (Social Network Analysis). I want to detect communities using mutual friend info on fb data. I want to find out if there is a good implementation of the naive approach to finding maximal k-Edge-Connected subgraphs from a graph. Algorithm enthusiasts of Reddit, could you please point me to any?

- A New Kind of Science
- Algorithm
- Alpha
- Computing
- Heuristic
- heuristic algorithms
- heuristic algorithms
- infinite web
- Interface
- Jean Buck
- Mathematica
- Mathematica
- Mathematica
- Mathematical software
- Microsoft
- Predictive Interface
- Science
- specific heuristic algorithms
- User interface
- Wolfram Alpha
- Wolfram Demonstrations Project
- Wolfram Demonstrations Project
- Wolfram Documentation Center
- Wolfram Research