Difference between revisions of "Interview Preparation Articles"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Sorting Topics)
(BSS and Data Segments)
 
(18 intermediate revisions by 3 users not shown)
Line 13: Line 13:
 
*  [[Standard Predefined Macros]]
 
*  [[Standard Predefined Macros]]
 
*  [[Interview Preparation topic: Recursive Function | Recursive Function]]
 
*  [[Interview Preparation topic: Recursive Function | Recursive Function]]
 +
*  [[Interview Preparation topic: Name Mangling | Name Mangling]]
 
<br/>
 
<br/>
  
Line 28: Line 29:
 
=== Other OS Topics ===
 
=== Other OS Topics ===
 
*  [[Interview Preparation OS Synchronization Primitives|Synchronization Primitives - Mutexes, Spinlocks, Queues etc.]]
 
*  [[Interview Preparation OS Synchronization Primitives|Synchronization Primitives - Mutexes, Spinlocks, Queues etc.]]
*  [[Interview Preparation OS Common Problems|Common Problems in Multitasking OS]]
+
*  [[Kernel Space and User Space|Kernel Space and User Space]]
  
 
<br/>
 
<br/>
 +
 
== Miscellaneous Topics ==
 
== Miscellaneous Topics ==
 
=== Bit Fiddling ===
 
=== Bit Fiddling ===
Line 37: Line 39:
 
*  [[Bit Structures | Bit Structures and Unions]]
 
*  [[Bit Structures | Bit Structures and Unions]]
 
=== BSS and Data Segments ===
 
=== BSS and Data Segments ===
*  [[Where do your variables stored | Where do Global and static variables stored ?]]
+
*  [[Where do your variables stored | Where are Global and static variables stored ?]]
 
<br/>
 
<br/>
  
Line 46: Line 48:
 
*  [[Add without using any arithmetic operators]]
 
*  [[Add without using any arithmetic operators]]
 
*  [[Data Structure Alignment-Packing of Structures]]
 
*  [[Data Structure Alignment-Packing of Structures]]
 +
*  [[Priority Queues]]
 +
*  [[Integer promotion in C]]
 
<br/>
 
<br/>
  
 
== Sorting Topics ==
 
== Sorting Topics ==
Sorting means arrangement of elements in a defined manner(Ascending/Descending order). This is widely used in the complex algorithms to decrease the time complexity. There are six types of sorting algorithms namely, Bubble Sort, Insertion Sort, Merge Sort, Quick Sort, Heap Sort and Selection Sort.
+
*  [[Interview Preparation Sorting |Sorting]]
 
 
*  [[Interview Preparation Bubble Sort | Bubble Sort]]
 
*  [[Interview Preparation Insertion Sort | Insertion Sort]]
 
*  [[Interview Preparation Merge Sort | Merge Sort]]
 
*  [[Interview Preparation Quick Sort | Quick Sort]]
 
*  [[Volatile Variable | Big O notation]]
 
=== Big O notation ===
 
Big O notation is a mathematical way of representing an approximate time required for an expression to complete by checking for its major dependencies.
 
For a example, f(n) = n^5 + n.
 
 
 
As we go on increasing the value of n the dependency on the second half equation on the right-hand side will reduce.
 
 
 
so, we can also say that f(n) = n^5 or complexity is O(n^5) for n equal to infinity.
 
 
 
Note: For comparison of big O complexity for different algorithms, refer following site:  http://bigocheatsheet.com/
 
 
 
=== Source Code ===
 
*  [https://gitlab.com/Khanna_Bharat/Data_Structure Gitlab Source Code Link]
 
 
 
==Searching Algorithms==
 
Information retrieval is critical in any computer application. Large sets of records are stored in computer system, from which a particular record is fetched in which required information would be stored. Each record stored in the computer environment would have a key associated to it. Based on the search criteria system scans through the records and extract the matching records only. To Increase the speed or reduce the information retrieval duration, various searching techniques are used.
 
  
Below are the basic commonly used searching algorithms.
+
== Algorithms==
* [[Linear Search]]
+
*[[Searching Algorithms]]
* [[Binary Search]]
+
*[[Graph Algorithms]]
  
 
==Embedded C Interview Questions and Answers==
 
==Embedded C Interview Questions and Answers==

Latest revision as of 00:47, 13 February 2017

Interview preparation requires proficient knowledge of C/C++. This article has just been recently written (July 2013) and will be elaborated soon; the articles in RED are waiting to be written. The hope is that this article will be "one-stop-shop" for most common C/C++ interview questions.


Frequently Asked Topics


C++ Object Oriented Topics


Operating Systems Topics

FreeRTOS Tutorial

FreeRTOS is a real-time OS that has many ports for various different controllers. This is a great system to learn about because it gives you the fundamental knowledge of an operating system while making it incredibly easy to learn the material. Here's a must-read tutorial :

Other OS Topics


Miscellaneous Topics

Bit Fiddling

BSS and Data Segments


Others


Sorting Topics

Algorithms

Embedded C Interview Questions and Answers

The following link would navigate to some questions that are very commonly asked in interviews(Cisco,Intacct,WNI etc.). It encloses some C programs as well.