background preloader

Programming Interview Questions

Programming Interview Questions

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 Programming Praxis | A collection of etudes, updated weekly, for the education and enjoyment of the savvy programmer 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.

Section 8.9.  Race Conditions 8.9. Race Conditions For our purposes, a race condition occurs when multiple processes are trying to do something with shared data and the final outcome depends on the order in which the processes run. We saw a potential race condition in the program in Figure 8.8 when the second child printed its parent process ID. A process that wants to wait for a child to terminate must call one of the wait functions. while (getppid() ! The problem with this type of loop, called polling, is that it wastes CPU time, as the caller is awakened every second to test the condition. To avoid race conditions and to avoid polling, some form of signaling is required between multiple processes. For a parent and child relationship, we often have the following scenario. We assume that the header apue.h defines whatever variables are required. Example The program in Figure 8.12 outputs two strings: one from the child and one from the parent. $ . In the program shown in Figure 8.13, the parent goes first.

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 Happy Codings - Programming Sample Code Source Code Search Engine, Example Codes 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

Unix - Shell Basic Operators There are various operators supported by each shell. Our tutorial is based on default shell (Bourne) so we are going to cover all the important Bourne Shell operators in the tutorial. There are following operators which we are going to discuss: Arithmetic Operators.Relational Operators.Boolean Operators.String Operators.File Test Operators. The Bourne shell didn't originally have any mechanism to perform simple arithmetic but it uses external programs, either awk or the must simpler program expr. Here is simple example to add two numbers: #! This would produce following result: Total value : 4 There are following points to note down: There must be spaces between operators and expressions for example 2+2 is not correct, where as it should be written as 2 + 2.Complete expression should be enclosed between ``, called inverted commas. Arithmetic Operators: There are following arithmetic operators supported by Bourne Shell. Assume variable a holds 10 and variable b holds 20 then: Show Examples

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.

Related: