OpenClassroom Full courses. Short Videos. Free for everyone. Learn the fundamentals of human-computer interaction and design thinking, with an emphasis on mobile web applications. A practical introduction to Unix and command line utilities with a focus on Linux. Introduction to fundamental techniques for designing and analyzing algorithms, including asymptotic analysis; divide-and-conquer algorithms and recurrences; greedy algorithms; data structures; dynamic programming; graph algorithms; and randomized algorithms. Database design and the use of database management systems (DBMS) for applications. Machine learning algorithms that learn feature representations from unlabeled data, including sparse coding, autoencoders, RBMs, DBNs. Introduction to discrete probability, including probability mass functions, and standard distributions such as the Bernoulli, Binomial, Poisson distributions. Introduction to applied machine learning. This is a course created to test the website.
Programming, Software, and Technical Interview Questions - XOR Swap USA Computing Olympiad GeeksforGeeks | A computer science portal for geeks Process vs. Thread Processes vs Threads A process is an executing instance of an application. What does that mean? Well, for example, when you double-click the Microsoft Word icon, you start a process that runs Word. A thread is a path of execution within a process. It’s important to note that a thread can do anything a process can do. Another difference between a thread and a process is that threads within the same process share the same address space, whereas different processes do not. MultiThreading Threads, of course, allow for multi-threading. If we were dealing with an application that uses only one thread, then the application would only be able to do one thing at a time – so printing and responding to user input at the same time would not be possible in a single threaded application. Each process has it’s own address space, but the threads within the same process share that address space. Subscribe to our newsletter for more free interview questions.
Practice and Learn - Google Code Jam On this page you can see results and code from past rounds of Google Code Jam, and you can try the problems for yourself. If you're new to Code Jam, try following the Quick-Start Guide. Where should I start? If you're new to programming contests, we highly recommend starting with the least difficult problems and moving up from there as you get more confident. Beware: the round that has the easiest problem A may have a very difficult problem B! As you get used to the platform, you can check how many people solved each problem in the "Submissions" box to the left of the dashboard, and use that as a rough gauge of difficulty. Here are some choice problems for new competitors: Africa 2010, Qualification Round: Store Credit, Reverse Words. Remember, if you get stuck you can look at someone else's solution (click a "solutions" link below) or join our mailing list and ask for help. Finding Solutions You can click a "solutions" link below, but those aren't really indexed in a helpful way. TopCoder
Interview Questions Open Database - GeekInterview Computer Science Teaching Material This page contains computer science projects, supplemental materials, and Java demonstrations that I have developed for my classes. These project descriptions include detailed step-by-step instructions intended for undergraduate computer science students to reproduce my work. If you find them useful or interesting, please send me an email. "Build an Operating System from Scratch" A teaching operating system that students write from scratch over a semester. The project handouts: I presented a paper on this project at the 2009 SIGCSE conference. Other Operating System Projects Shell: Write a simple UNIX shellUndelete: Write an MS-DOS file undelete programMinix: Modify the Minix kernel, add a system call, tweak the process scheduler. "Build a Computer from Scratch" A sequence of digital hardware labs for computer science students. Lab handouts: I presented a paper on these labs at the 2008 CCSCE conference. "Design and Simulate Your Own Processor" Handouts: Mini-Pascal Compiler Network Simulator
Algo Muse 16-1 In the box There are n identical boxes in which 2n balls are equally distributed. The balls are labelled from 1 to 2n. We don't know which ball is in which box, but do know that each box contains two balls. For any set of balls S ⊆ {1,...,2n} we can ask a query of the form `How many boxes contain the balls in S?'. Prove that we can learn the distribution of balls by asking O(n log n) queries. Note that we cannot tell which ball is in which box. Solution Solution There are n pairs of balls. Lemma. Proof. How many boxes contain the balls in set A? If answers to both the questions are same, then x is paired with one of the balls in set A; else x is paired with one of the balls in set B. 16-2 Evasive Tree We prove the lower bound for the special case when the tree is a path, using an adversarial argument. Assume that the algorithm never asks a query to which it can infer the answer. Analysis. We claim that at least one of the four query arcs shown in P1 must be present. 16-3 Saving a log
Google Interview Questions | CareerCup Google Interview Questions Page: Filter: Sort By: Date | Number of Comments | Most Recent Comment | Votes Add Question CareerCup is the world's biggest and best source for software engineering interview preparation. How Can You Help CareerCup? Find Out When Gayle / CareerCup / Cracking the Coding Interview is in Your City Top Companies Top Jobs Top Topics What's Going On Report a Bug or Issue Books Cracking the Tech Career is a comprehensive book on getting a job at a top tech company, while Cracking the Coding Interview focuses on dev interviews and Cracking the PM Interview does this for PMs. Learn More Videos CareerCup's interview videos give you a real-life look at technical interviews. Learn More Resume Review Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. Learn More Mock Interviews Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. Learn More
Sphere Online Judge (SPOJ) Running contests Past contests So far we have hosted 3282 contests (2224 completed, 1051 currently running, 7 scheduled), of which 20 were official and 2732 were open to all participants. If you are interested in receiving contest hosting privileges for your SPOJ account, please drop us a line.