Exam help: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Ebarrier (talk | contribs)
No edit summary
Ebarrier (talk | contribs)
No edit summary
Line 104: Line 104:


* What is time complexity of algorithm?
* What is time complexity of algorithm?
In computer science, the time complexity of an algorithm quantifies the amount of time taken by an algorithm to run as a function of the length of the string representing the input. Time complexity is commonly estimated by counting the number of elementary operations performed by the algorithm, where an elementary operation takes a fixed amount of time to perform.
* What is space complexity of algorithm?
* What is space complexity of algorithm?
Space complexity is a measure of the amount of working storage an algorithm needs. That means how much memory, in the worst case, is needed at any point in the algorithm.
It represents the total amount of memory space that a "normal" physical computer would need to solve a given computational problem with a given algorithm.
* What's a good algorithm?
* What's a good algorithm?



Revision as of 13:40, 11 January 2016

Computer hardware

Storage abstractions

Bootloaders, kernels

  • What is the role of BIOS/UEFI in x86-based machines?
  • Explain step by step how operating system is booted up, see slides for flowchart.
  • Describe the functionality provided by general purpose operating system. See architecture of Windows NT, Android, OS X.
  • What are the main differences between real mode and protected mode of x86-based processor?
  • What happens during context switch?
  • What is the purpose of paged virtual memory?

Libraries, frameworks

Programming languages

Data encoding

  • What is bit? Nibble? Byte? Word?
  • Write 9375 in binary, hexadecimal?
  • Write 0xDEADBEEF in decimal?
  • What is quantization in terms of signal processing?
  • How are integers stored in binary? What integer range can be described using n bits? How many bits are required to describe integer range from n .. m.
  • How are single precision and double precision floating point numbers stored in binary according to IEEE754 standard? Floating-point multiplication
  • What is the difference between CMYK and RGB color models? How are YUV, HSV and HSL colorspaces related to RGB? What are sRGB and YCbCr and where are they used?
  • How is data encoded on audio CD-s? What is the capacity of an audio CD?
  • What is sampling rate? What is bit depth? What is resolution?
  • What is bitrate?
  • What is lossy/lossless compression?
  • What is JPEG suitable for? Is JPEG lossy or lossless compression method?
  • What is PNG suitable for? Does PNG support compression?
  • How are time domain and frequency domain related in terms of signal processing? What is Fourier transform and where it is applied?

Code execution in processor

  • Given ~10 instructions and their explainations, follow the instructions and elaborate after every step what happened in the processor?

Microcontrollers

  • What distinguishes microcontroller from microprocessor?
  • What are the differences between Hardvard architecture and von Neumann architecture?
  • What is an interrupt?
  • What is an timer?

Introduction to Boole algebra

  • Simplify A AND A OR B
  • Show addition of X and Y in binary
  • Show subtraction of X and Y in binary
  • Show multiplication of X and Y in binary

Hardware description languages

  • What are the uses for hardware description languages?
  • What is latch?
  • What is flip-flop?
  • What is mux (multiplexer)?
  • What is register? Register file?
  • What is ALU?
  • What is floating-point unit?
  • What is a cache?
  • What is a bus?
  • Show the circuit diagram for A OR B AND C, NOT A AND B, <insert some other Boole formula here>?
  • Show the truth table for <insert Boole formula here>?
  • Write the equivalent Boole formula of a circuit diagram.

Publishing work

  • What are the major implications of MIT, BSD and GPL licenses?
  • What are the differences between copyright, trademark, trade secret?
  • Where would you use waterfall software development model? Where would you use agile?
  • What is the purpose of a version control system?
  • What would you store in a version control system?

Algorithms and data structures

  • What is time complexity of algorithm?

In computer science, the time complexity of an algorithm quantifies the amount of time taken by an algorithm to run as a function of the length of the string representing the input. Time complexity is commonly estimated by counting the number of elementary operations performed by the algorithm, where an elementary operation takes a fixed amount of time to perform.

  • What is space complexity of algorithm?

Space complexity is a measure of the amount of working storage an algorithm needs. That means how much memory, in the worst case, is needed at any point in the algorithm. It represents the total amount of memory space that a "normal" physical computer would need to solve a given computational problem with a given algorithm.

  • What's a good algorithm?

History

Moore's law is the observation that the number of transistors in a dense integrated circuit doubles approximately every two years. The observation is named after Gordon E. Moore, the co-founder of Intel and Fairchild Semiconductor, whose 1965 paper described a doubling every year in the number of components per integrated circuit, and projected this rate of growth would continue for at least another decade. In 1975, looking forward to the next decade, he revised the forecast to doubling every two years. Rock's law or Moore's second law, named for Arthur Rock or Gordon Moore, says that the cost of a semiconductor chip fabrication plant doubles every four years. As of 2015, the price had already reached about 14 billion US dollars.

  • What were the major contributing factors for success of Microsoft, Apple, Google, <your favourite company>?
  • What were the major contributing factors to the success of Silicon Valley?