Masters Exam. Fall 2004 Department of Computer Science University of Arizona

Size: px
Start display at page:

Download "Masters Exam. Fall 2004 Department of Computer Science University of Arizona"

Transcription

1 Masters Exam Fall 2004 Department of Computer Science University of Arizona This exam consists of ten problems, from which you will do six questions. The questions are in three areas: Theory (CSc 520, 545, 573), Systems (CSc 552, 553, 576), and Applications (CSc 522, 525, 533, 560). Answer two questions from each area. If more than two questions are attempted in an area, the two highest scores are used. You have two hours for the exam. Books or notes are not permitted. At the end of the exam, submit only your solutions in the envelope provided; do not include scrap paper. Write your answers on the paper provided separately. Start the answer to each question on a new sheet of paper. On each page you hand in, write the problem number in the upper-left corner, and the last four digits of your social security number in the upper-right corner. Results will be posted using the four-digit numbers. Some problems may ask you to write an algorithm or a program. Unless directed otherwise, use informal pseudocode. You may use programmming constructs that help present your solution provided their meaning is clear and they do not make the problem trivial. For example, when describing code that iterates over the elements of a set S, you may use a construct such as for x S do statement s

2 Theory 1 CSc 520 (Programming Language Theory) The following questions concern scoping of identifiers. (a) (3 points) Compare and contrast static and dynamic scoping. Explain how identifier bindings are resolved at compile-time or run-time. (b) (3 points) Briefly, why has dynamic scoping fallen out of favor? Give two distinct reasons. (c) (4 points) Write a single short program that prints the word dynamic if the language implementation uses dynamic scoping, and prints the word static if the implementation uses static scoping. ( by Todd Proebsting.) (a) Static scoping resolves all references at compile-time using lexical scoping. No run-time properties are necessary to determine bindings. Dynamic scoping requires binding resolution of free variables that is dependent on the execution context. An instance of the same identifier could be bound to different variables depending on execution context (i.e. the calling procedure). (b) Dynamic scoping requires identifier binding at run-time, which is a costly operation. Dynamic scoping makes programs hard to reason about because the programmer must anticipate all possible calling contexts for a procedure s free variables. (c) One solution is the following: var x : integer := 1; procedure foo() if (x==0) then print "dynamic" else print "static"; procedure main() var x : integer := 0; call foo() 1

3 Theory 2 CSc 545 (Algorithms) Suppose you have a pile of nuts and bolts, and you want to find the pairs of nuts and bolts that match. Specifically, there are n nuts and n bolts, and each nut matches exactly one bolt. When comparing a nut to a bolt, if they don t match you learn which one is bigger than the other, but you cannot directly compare two nuts or two bolts. (a) (3 points) How fast can you match the nuts and bolts in the worst case? More precisely, what is the worst-case running time of your algorithm in terms of the number of nut-bolt comparisons? (b) (7 points) How fast can you match the nuts and bolts in the expected case? You may use randomization to speed up your algorithm from Part (a). ( by Stephen Kobourov.) (a) Here is a trivial Θ(n 2 ) time algorithm. Compare each nut to each bolt. Since there are n nuts and n bolts, this takes Θ(n 2 ) comparisons in the worst case. (b) We can do better. A simple modification of QuickSort shows there is a randomized algorithm whose expected number of comparisons (and running time) is O(n log n). Just pick a random bolt, compare it to all nuts, find its matching nut, and compare it to all bolts, splitting the problem into two subproblems, one consisting of the nuts and bolts smaller than the matched pair and one consisting of the larger ones. Repeating in this manner yields an algorithm whose expected running time is O(n log n). The analysis is similar to that for QuickSort. 2

4 Theory 3 CSc 573 (Theory of Computation) The following questions concern closure properties of languages. (a) (4 points) Let A be a regular language and B be some other language that we know nothing about. Suppose we find that A B is not regular. Which of the following can we say about B? (1) B is regular. (2) B is not regular. (3) B might or might not be regular. Justify your answer carefully. (b) (6 points) Prove or disprove the following: If languages A and B are both context-free, then their intersection A B is context-free. ( by Stephen Kobourov.) (a) Answer (2) is correct: B is not regular. To see this, suppose B was regular. Since the class of regular languages is closed under union, this implies A B is regular, which is a contradiction. (b) This is false. Both and A := B := { } a i b i c j : i, j 1 { } a i b j c j : i, j 1 are context-free, but their intersection is { } A B = a i b i c i : i 1, which can be shown to be non-context-free using the pumping lemma. 3

5 Systems 1 CSc 552 (Operating Systems) The following questions concern remote procedure calls. (a) (3 points) What is the difference between idempotent and non-idempotent operations? Give an example of each. (b) (4 points) What is the difference between at-least-once and at-most-once remoteprocedure-call semantics? Briefly describe how each might be implemented. (c) (3 points) Why is the distinction between idempotent and non-idempotent operations important with respect to the different remote-procedure-call semantics? ( by John Hartman.) (a) An idempotent operation is one that has the same effect no matter how many times it is performed. Examples are reading a block of a file, or setting an account balance to a particular value. A non-idempotent operation has the opposite quality: its effect depends on how many times it is performed. Examples are appending to a file, or adding to an account balance. (b) At-least-once semantics guarantee that a remote-procedure call (RPC) is performed by the server at least once, even in the face of server failures. This can be implemented by having the client retransmit the RPC request until a reply is received. Since the server may fail after performing the RPC but before sending the reply, it may redo the RPC when it reboots. At-most-once semantics guarantee that an RPC is performed at most once by the server, even in the face of server failures. This can be accomplished by maintaining an epoch number on the server that the clients must include in the RPC requests. The server increments the epoch number when it reboots and refuses to service RPCs from the previous epoch. Clients eventually time-out when a reply is not received. (c) At-least-once RPC semantics require idempotent operations since the RPC may be performed multiple times. At-most-once RPC semantics can use either semantics, although it is left up to the client as to how to proceed if an RPC fails. 4

6 Systems 2 CSc 553 (Compilers) Briefly describe in one or two sentences what each of the following terms means in compilation, and what it is used for: register allocation, instruction scheduling, peephole optimization, liveness analysis, and control flow graphs. (Register allocation) This refers to the process of determining which variables are kept in registers at any given point in a program, and which are kept in memory. It is used to improve the performance of the compiled code by keeping frequently accessed variables in registers. (Instruction scheduling) This refers to the process of determining an ordering for the instructions in a program that preserves program semantics, but which may be more efficient than the original instruction order for the program. It is used to hide the latencies of expensive operations where possible. (Peephole optimization) This is an optimization that uses a sliding window over the instruction sequences to look for specific patterns of instructions, and replace them with equivalent sequences that are shorter or faster. This is a simple and cheap approach to effecting local improvements in the code generated by the compiler. (Liveness analysis) Liveness analysis is used to determine which variables in the program are live at each point in the program, i.e. which may be used at a later program point prior to being redefined. Variable liveness information is used for a variety of optimizations, e.g. in register allocation to determine whether the value of a variable in a register can be overwritten by that of some other variable. (Control flow graphs) A control flow graph is a directed graph where each node is a basic block and where there is an edge from node A to node B if it is possible for control to leave A and go immediately to B. It is used as the basic internal low-level program representation for a wide variety of program analyses and optimizations. 5

7 Systems 3 CSc 576 (Architecture) The following questions concern instruction scheduling and memory caches. (a) (5 points) Scoreboarding and Tomasulo s algorithm are commonly-used algorithms for dynamic instruction-scheduling in processors that support out-of-order execution. Explain how these algorithms differ in handling WAW and WAR hazards. (b) (5 points) The average memory-access time is determined by three factors. List these factors, and for each, name a technique that reduces the cache-hit time by affecting that factor. (a) Through register renaming, Tomasulo s algorithm effectively eliminates these hazards. Each instruction is assigned a unique destination register to which it writes its result by the register renaming mechanism, thereby eliminating these hazards. In scoreboarding, the execution of an instruction is delayed until the hazards are resolved. (b) The factors are: (1) cache miss-rate, affected by using a victim cache, (2) cache hit-time, affected by using a virtually-indexed and physically-tagged cache, and (3) cache miss-penalty, affected by giving priorities to reads over writes. 6

8 Applications 1 CSc 522 (Parallel and Distributed Programming) The following questions concern three mechanisms for creating and terminating processes: co/oc (also called cobegin/coend), fork/join/quit, and static process declaration. (a) (5 points) Informally describe the semantics of each of the above mechanisms. (b) (5 points) Discuss the advantages and disadvantages of each. In particular, describe which of the mechanisms above can simulate the other mechanisms. (a) Their semantics are: co/oc: These primitives explicitly specify a sequence of program statements (or processes) that may be executed concurrently. fork/join/quit: If process p executes fork x, it creates a new process q that starts executing the instruction labeled x. Processes p and q can execute concurrently. The command join(t, y) has the following effect: t := t-1 if t = 0 goto y; else quit; The command quit causes the process to terminate. Static process declaration: With this mechanism, process types are declared in the definition of a process p. When p is activated, the processes declared within the definition of p are also activated. (b) Their advantages and disadvantages are: co/oc: This can describe any process flow graph that is a series-parallel graph, but nothing more general. fork/join/quit: These can describe arbitrary process flow graphs and can simulate the two other mechanisms. The disadvantage is they are very unstructured. Static process declaration: This allows explicitly designating code segments as separate processes. The disadvantage is there is no mechanism for joining processes. 7

9 Applications 2 CSc 525 (Networking) The Internet is built on an infrastructure that is prone to failures. Suppose we found a way to build an infrastructure that did not fail. In particular, network links that connect hosts and routers never drop packets, never have bit errors, and every packet transmitted over a link gets to its destination. Furthermore, routers that connect networks never fail: every packet that gets to a router gets sent over a link to another router along a path to its destination. (a) (5 points) Consider the IP layer. What are the main features that IP provides in the traditional Internet? Of these features, what features would still be present in the never-fail Internet? (b) (5 points) Consider the TCP layer. What are the main features that TCP provides in the traditional Internet? Of these features, what features would still be present in the never-fail Internet? In your answers to Parts (a) and (b), for each feature still present in the never-fail Internet, give a very brief explanation why that feature is needed. ( by Patrick Homer.) (a) IP in the traditional Internet provides: host-to-host communication, datagram delivery, packet formatting, fragmentation and reassembly, IP addressing (or naming of hosts), and packet routing. In the never-fail Internet, IP would still provide these, but some would change in service: host-to-host communication: same, datagram delivery: same, but all datagrams (packets) get through, packet formatting: same, fragmentation and reassembly: same, as it s still needed to accomodate various sizes of packets or frames accepted by the underlying network hardware, IP addressing: same, packet routing: same, as we still need to consider the best (fastest or leastcongested) path for a packet to follow. (b) TCP in the traditional Internet provides: application-to-application communication, 8

10 byte streams, flow control, reliable delivery, ordered delivery of data, and virtual circuits. In the never-fail Internet, TCP would still provide the following: application-to-application communication: still needed to multiplex connections, byte streams: still a useful abstraction on top of packets, flow control: still needed (a key point!) since congestion is still possible, reliable delivery: not needed, since the underlying network is reliable, ordered delivery: still needed, since packets can arrive out-of-order by taking different paths through the Internet, virtual circuits: can be argued either way. They can be useful to establish a route for data to follow. One can also argue they are not necessary since the underlying network will deliver every packet. (TCP uses virtual circuits in part to avoid the how-long-do-i-wait-for-an-answer problem that UDP has.) 9

11 Applications 3 CSc 533 (Graphics) The following questions concern projecting points onto a viewing plane. (a) (1 point) Sketch a right-hand coordinate system with a point at (x, y, z) and a camera plane at z = f. Now illustrate how a point (x, y, z) with z > f gets projected onto the camera plane to become point (x, y, z ). (b) (1 point) Determine an expression for (x, y, z ) from Part (a). The derivation need not be long, but full credit requires some indication of how you got your answer. (c) (2 points) Is there a 3-by-3 matrix which maps (x, y, z) to (x, y, z )? If yes, what is it? If no, why not? (d) (2 points) Is there a 4-by-4 matrix which maps a homogeneous coordinate representation for (x, y, z) to a homogeneous coordinate representation for (x, y, z )? If yes, what is it? If no, why not? (e) (1 point) Regardless of whether the matrices in Parts (c) and (d) exist, state two independent properties of a matrix A that maps points in a three-dimensional world onto a plane. (f) (2 points) Suppose the camera is now at an arbitrary location as specified by the center of its image plane, and is pointing in an arbitrary direction. You can assume you know a camera-centric right-hand coordinate system. The focal length is still f. Describe how to compute a single matrix that can be used to map points onto the camera plane. (A complete derivation is not needed, just an outline of how it can be done.) (g) (1 point) Suppose you have an implementation that speeds up your answer for Part (f) by a factor of five. In rough terms, what is the anticipated computational improvement of the overall graphics pipeline when rendering a complex scene? ( by Kobus Barnard.) (a) See the following figure. 10

12 (b) See the above figure. (c) There is no such matrix, because the mapping derived in Part (b) is not a linear transformation. We would need to be able to express (x, y, z ) as a linear combination of x, y, and z. (d) It can be done in homogeneous coordinates because we can use the fourth coordinate w, to encode the division. In particular, the 4-by-4 matrix with ones for the first three diagonal entries, 1/f for entry (4, 3), and zero everywhere else does the job. (e) Two independent properties are: (1) A 2 = A, and (2) det(a) = 0, or inv(a) does not exist. (f) We can tackle this problem by changing coordinate systems, making it so that the objects are now expressed in terms of the the coordinate system drawn in Part (a). We can then follow this by the matrix operation for Part (d) to get a single matrix. We can do the change of coordinates with a sequence of translations and rotations. We can change coordinates by a translation which takes the camera center to the origin, a rotation to align the two right-hand coordinate systems, and then a final translation to put the focal point at the center. Having found a sequence of matrix operations, which when followed by the matrix in Part (d) does the projection, we get a single matrix by multiplying them together in the right order (right to left if we list them in the order that they would apply to a point). (g) The impact is minimal because the computation of the above matrix is only done once, and the single matrix is then applied to potentially millions of objects. It already does not take much time relative to other parts of the application (if done by any remotely reasonable method), so speeding it up has almost no effect. 11

13 Applications 4 CSc 560 (Databases) One method for finding nearest neighbors in a multidimensional database, where Euclidean distance is used to measure the nearness of data objects, is the branch-and-bound algorithm with an R-tree index. The key feature of the branch-and-bound algorithm is that it takes advantage of the Minimum- Bounding-Region Face-Property to prune the search space. Explain what this property is, and how it helps reduce query-processing costs. ( by Bongki Moon.) The Minimum-Bounding-Region (MBR) Face-Property is that every face of an MBR must touch at least one object enclosed by the MBR. This property implies the following: Given any query point q and any set of data objects S, there exists an object x S such that dist(q, x) MinMaxDist(q, MBR(S)). If an object y is encountered during the tree search and dist(q, y) > MinMaxDist(q, M) for any MBR M that has already been encountered, then object y cannot be the nearest neighbor of q and can be discarded. This is because the MBR M contains at least one object closer to q than y by the above. 12

Graduate Examination. Department of Computer Science The University of Arizona Spring March 5, Instructions

Graduate Examination. Department of Computer Science The University of Arizona Spring March 5, Instructions Graduate Examination Department of Computer Science The University of Arizona Spring 2004 March 5, 2004 Instructions This examination consists of ten problems. The questions are in three areas: 1. Theory:

More information

High Performance Computer Architecture Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

High Performance Computer Architecture Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur High Performance Computer Architecture Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 18 Dynamic Instruction Scheduling with Branch Prediction

More information

Structure of Computer Systems

Structure of Computer Systems 288 between this new matrix and the initial collision matrix M A, because the original forbidden latencies for functional unit A still have to be considered in later initiations. Figure 5.37. State diagram

More information

CS454/654 Midterm Exam Fall 2004

CS454/654 Midterm Exam Fall 2004 CS454/654 Midterm Exam Fall 2004 (3 November 2004) Question 1: Distributed System Models (18 pts) (a) [4 pts] Explain two benefits of middleware to distributed system programmers, providing an example

More information

Midterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer

Midterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer Midterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer The exam consists of 10 questions. There are 2 points per question for a total of 20 points. You

More information

Reference Models. 7.3 A Comparison of the OSI and TCP/IP Reference Models

Reference Models. 7.3 A Comparison of the OSI and TCP/IP Reference Models Reference Models Contains 7.1 The OSI Reference Model 7.1.1 The Physical Layer 7.1.2 The Data Link Layer 7.1.3 The Network Layer 7.1.4 The Transport Layer 7.1.5 The Session Layer 7.1.6 The Presentation

More information

EXAM 1 SOLUTIONS. Midterm Exam. ECE 741 Advanced Computer Architecture, Spring Instructor: Onur Mutlu

EXAM 1 SOLUTIONS. Midterm Exam. ECE 741 Advanced Computer Architecture, Spring Instructor: Onur Mutlu Midterm Exam ECE 741 Advanced Computer Architecture, Spring 2009 Instructor: Onur Mutlu TAs: Michael Papamichael, Theodoros Strigkos, Evangelos Vlachos February 25, 2009 EXAM 1 SOLUTIONS Problem Points

More information

MIDTERM EXAMINATION #2 OPERATING SYSTEM CONCEPTS U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E

MIDTERM EXAMINATION #2 OPERATING SYSTEM CONCEPTS U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E MIDTERM EXAMINATION #2 OPERATING SYSTEM CONCEPTS 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Intersession 2008 Last Name: First Name: Student ID: PLEASE

More information

B.Sc. (Hons.) Computer Science with Network Security B.Eng. (Hons) Telecommunications B.Sc. (Hons) Business Information Systems

B.Sc. (Hons.) Computer Science with Network Security B.Eng. (Hons) Telecommunications B.Sc. (Hons) Business Information Systems B.Sc. (Hons.) Computer Science with Network Security B.Eng. (Hons) Telecommunications B.Sc. (Hons) Business Information Systems Bridge BTEL/PT BCNS/14/FT BIS/14/FT BTEL/14/FT Examinations for 2014-2015

More information

Today CSCI Communication. Communication in Distributed Systems. Communication in Distributed Systems. Remote Procedure Calls (RPC)

Today CSCI Communication. Communication in Distributed Systems. Communication in Distributed Systems. Remote Procedure Calls (RPC) Today CSCI 5105 Communication in Distributed Systems Overview Types Remote Procedure Calls (RPC) Instructor: Abhishek Chandra 2 Communication How do program modules/processes communicate on a single machine?

More information

Networks and distributed computing

Networks and distributed computing Networks and distributed computing Hardware reality lots of different manufacturers of NICs network card has a fixed MAC address, e.g. 00:01:03:1C:8A:2E send packet to MAC address (max size 1500 bytes)

More information

CPSC 313, 04w Term 2 Midterm Exam 2 Solutions

CPSC 313, 04w Term 2 Midterm Exam 2 Solutions 1. (10 marks) Short answers. CPSC 313, 04w Term 2 Midterm Exam 2 Solutions Date: March 11, 2005; Instructor: Mike Feeley 1a. Give an example of one important CISC feature that is normally not part of a

More information

EXAM ELEMENTARY MATH FOR GMT: ALGORITHM ANALYSIS NOVEMBER 7, 2013, 13:15-16:15, RUPPERT D

EXAM ELEMENTARY MATH FOR GMT: ALGORITHM ANALYSIS NOVEMBER 7, 2013, 13:15-16:15, RUPPERT D SOLUTIONS EXAM ELEMENTARY MATH FOR GMT: ALGORITHM ANALYSIS NOVEMBER 7, 2013, 13:15-16:15, RUPPERT D This exam consists of 6 questions, worth 10 points in total, and a bonus question for 1 more point. Using

More information

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into 2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS OF DISTRIBUTED SYSTEMS Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between

More information

CMPE150 Midterm Solutions

CMPE150 Midterm Solutions CMPE150 Midterm Solutions Question 1 Packet switching and circuit switching: (a) Is the Internet a packet switching or circuit switching network? Justify your answer. The Internet is a packet switching

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 20 MIDTERM EXAMINATION #1 - B COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2008-75 minutes This examination document

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 20 MIDTERM EXAMINATION #1 - A COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2008-75 minutes This examination document

More information

Final Exam Solutions May 11, 2012 CS162 Operating Systems

Final Exam Solutions May 11, 2012 CS162 Operating Systems University of California, Berkeley College of Engineering Computer Science Division EECS Spring 2012 Anthony D. Joseph and Ion Stoica Final Exam May 11, 2012 CS162 Operating Systems Your Name: SID AND

More information

Data and Computer Communications. Protocols and Architecture

Data and Computer Communications. Protocols and Architecture Data and Computer Communications Protocols and Architecture Characteristics Direct or indirect Monolithic or structured Symmetric or asymmetric Standard or nonstandard Means of Communication Direct or

More information

ECE 3055: Final Exam

ECE 3055: Final Exam ECE 3055: Final Exam Instructions: You have 2 hours and 50 minutes to complete this quiz. The quiz is closed book and closed notes, except for one 8.5 x 11 sheet. No calculators are allowed. Multiple Choice

More information

Remote Procedure Call. Tom Anderson

Remote Procedure Call. Tom Anderson Remote Procedure Call Tom Anderson Why Are Distributed Systems Hard? Asynchrony Different nodes run at different speeds Messages can be unpredictably, arbitrarily delayed Failures (partial and ambiguous)

More information

11. a b c d e. 12. a b c d e. 13. a b c d e. 14. a b c d e. 15. a b c d e

11. a b c d e. 12. a b c d e. 13. a b c d e. 14. a b c d e. 15. a b c d e CS-3160 Concepts of Programming Languages Spring 2015 EXAM #1 (Chapters 1-6) Name: SCORES MC: /75 PROB #1: /15 PROB #2: /10 TOTAL: /100 Multiple Choice Responses Each multiple choice question in the separate

More information

Stream Control Transmission Protocol

Stream Control Transmission Protocol Chapter 13 Stream Control Transmission Protocol Objectives Upon completion you will be able to: Be able to name and understand the services offered by SCTP Understand SCTP s flow and error control and

More information

Continuous Real Time Data Transfer with UDP/IP

Continuous Real Time Data Transfer with UDP/IP Continuous Real Time Data Transfer with UDP/IP 1 Emil Farkas and 2 Iuliu Szekely 1 Wiener Strasse 27 Leopoldsdorf I. M., A-2285, Austria, farkas_emil@yahoo.com 2 Transilvania University of Brasov, Eroilor

More information

UNIT I (Two Marks Questions & Answers)

UNIT I (Two Marks Questions & Answers) UNIT I (Two Marks Questions & Answers) Discuss the different ways how instruction set architecture can be classified? Stack Architecture,Accumulator Architecture, Register-Memory Architecture,Register-

More information

NAME: Problem Points Score. 7 (bonus) 15. Total

NAME: Problem Points Score. 7 (bonus) 15. Total Midterm Exam ECE 741 Advanced Computer Architecture, Spring 2009 Instructor: Onur Mutlu TAs: Michael Papamichael, Theodoros Strigkos, Evangelos Vlachos February 25, 2009 NAME: Problem Points Score 1 40

More information

Da t e: August 2 0 th a t 9: :00 SOLUTIONS

Da t e: August 2 0 th a t 9: :00 SOLUTIONS Interne t working, Examina tion 2G1 3 0 5 Da t e: August 2 0 th 2 0 0 3 a t 9: 0 0 1 3:00 SOLUTIONS 1. General (5p) a) Place each of the following protocols in the correct TCP/IP layer (Application, Transport,

More information

Your Name: Your student ID number:

Your Name: Your student ID number: CSC 573 / ECE 573 Internet Protocols October 11, 2005 MID-TERM EXAM Your Name: Your student ID number: Instructions Allowed o A single 8 ½ x11 (front and back) study sheet, containing any info you wish

More information

ECE 461 Internetworking Fall Quiz 1

ECE 461 Internetworking Fall Quiz 1 ECE 461 Internetworking Fall 2013 Quiz 1 Instructions (read carefully): The time for this quiz is 50 minutes. This is a closed book and closed notes in-class exam. Non-programmable (Type 2) calculators

More information

Homework 1 Solutions:

Homework 1 Solutions: Homework 1 Solutions: If we expand the square in the statistic, we get three terms that have to be summed for each i: (ExpectedFrequency[i]), (2ObservedFrequency[i]) and (ObservedFrequency[i])2 / Expected

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2000.6.1 COMPUTER SCIENCE TRIPOS Part IB Thursday 8 June 2000 1.30 to 4.30 Paper 6 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five

More information

Concurrent & Distributed Systems Supervision Exercises

Concurrent & Distributed Systems Supervision Exercises Concurrent & Distributed Systems Supervision Exercises Stephen Kell Stephen.Kell@cl.cam.ac.uk November 9, 2009 These exercises are intended to cover all the main points of understanding in the lecture

More information

Networks and distributed computing

Networks and distributed computing Networks and distributed computing Abstractions provided for networks network card has fixed MAC address -> deliver message to computer on LAN -> machine-to-machine communication -> unordered messages

More information

CS152 Exam #2 Fall Professor Dave Patterson

CS152 Exam #2 Fall Professor Dave Patterson CS152 Exam #2 Fall 2003 Professor Dave Patterson Question 1: Potpourri (Jack and Dave s Question) Part A: TLBs entries have valid bits and dirty bits. Data caches have them also. Which of the following

More information

Computer Networks - Midterm

Computer Networks - Midterm Computer Networks - Midterm October 28, 2016 Duration: 2h15m This is a closed-book exam Please write your answers on these sheets in a readable way, in English or in French You can use extra sheets if

More information

JAMES F. KUROSE AND KEITH W. ROSS

JAMES F. KUROSE AND KEITH W. ROSS JAMES F. KUROSE AND KEITH W. ROSS What is the internet? There is no one definition. Two ways to try to describe it: Nuts and bolts i.e. the basic hardware and software components A networking infrastructure

More information

Question Score Points Out Of 25

Question Score Points Out Of 25 University of Texas at Austin 6 May 2005 Department of Computer Science Theory in Programming Practice, Spring 2005 Test #3 Instructions. This is a 50-minute test. No electronic devices (including calculators)

More information

Network Protocols - Revision

Network Protocols - Revision Network Protocols - Revision Luke Anderson luke@lukeanderson.com.au 18 th May 2018 University Of Sydney Overview 1. The Layers 1.1 OSI Model 1.2 Layer 1: Physical 1.3 Layer 2: Data Link MAC Addresses 1.4

More information

CS513/EE506/CS4514 Intro to Local and Wide Area Networks WPI, Summer 2006

CS513/EE506/CS4514 Intro to Local and Wide Area Networks WPI, Summer 2006 CS513/EE506/CS4514 Intro to Local and Wide Area Networks WPI, Summer 006 Craig E. Wills Final Exam (100 pts) Given: Wednesday, July 19, 006 NAME: This is a closed book (and notes) examination. Answer all

More information

King Fahd University of Petroleum and Minerals College of Computer Sciences and Engineering Department of Computer Engineering

King Fahd University of Petroleum and Minerals College of Computer Sciences and Engineering Department of Computer Engineering Student Name: Section #: King Fahd University of Petroleum and Minerals College of Computer Sciences and Engineering Department of Computer Engineering COE 344 Computer Networks (T072) Final Exam Date

More information

Advanced Data Types and New Applications

Advanced Data Types and New Applications C H A P T E R25 Advanced Data Types and New Applications Practice Exercises 25.1 What are the two types of time, and how are they different? Why does it make sense to have both types of time associated

More information

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Objective PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Explain what is meant by compiler. Explain how the compiler works. Describe various analysis of the source program. Describe the

More information

COMP-520 GoLite Tutorial

COMP-520 GoLite Tutorial COMP-520 GoLite Tutorial Alexander Krolik Sable Lab McGill University Winter 2019 Plan Target languages Language constructs, emphasis on special cases General execution semantics Declarations Types Statements

More information

Homework 2. Sample Solution. Due Date: Thursday, May 31, 11:59 pm

Homework 2. Sample Solution. Due Date: Thursday, May 31, 11:59 pm Homework Sample Solution Due Date: Thursday, May 31, 11:59 pm Directions: Your solutions should be typed and submitted as a single pdf on Gradescope by the due date. L A TEX is preferred but not required.

More information

ET4254 Communications and Networking 1

ET4254 Communications and Networking 1 Topic 9 Internet Protocols Aims:- basic protocol functions internetworking principles connectionless internetworking IP IPv6 IPSec 1 Protocol Functions have a small set of functions that form basis of

More information

Dr. Amotz Bar-Noy s Compendium of Algorithms Problems. Problems, Hints, and Solutions

Dr. Amotz Bar-Noy s Compendium of Algorithms Problems. Problems, Hints, and Solutions Dr. Amotz Bar-Noy s Compendium of Algorithms Problems Problems, Hints, and Solutions Chapter 1 Searching and Sorting Problems 1 1.1 Array with One Missing 1.1.1 Problem Let A = A[1],..., A[n] be an array

More information

CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS

CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS UNIT-I OVERVIEW & INSTRUCTIONS 1. What are the eight great ideas in computer architecture? The eight

More information

Lexical Considerations

Lexical Considerations Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Fall 2005 Handout 6 Decaf Language Wednesday, September 7 The project for the course is to write a

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS OF DISTRIBUTED SYSTEMS Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between

More information

CS 381 Computer Graphics, Fall 2012 Midterm Exam Solutions. The Midterm Exam was given in class on Tuesday, October 16, 2012.

CS 381 Computer Graphics, Fall 2012 Midterm Exam Solutions. The Midterm Exam was given in class on Tuesday, October 16, 2012. CS 381 Computer Graphics, Fall 2012 Midterm Exam Solutions The Midterm Exam was given in class on Tuesday, October 16, 2012. 1. [7 pts] Synthetic-Camera Model. Describe the Synthetic-Camera Model : how

More information

Richard Feynman, Lectures on Computation

Richard Feynman, Lectures on Computation Chapter 8 Sorting and Sequencing If you keep proving stuff that others have done, getting confidence, increasing the complexities of your solutions for the fun of it then one day you ll turn around and

More information

Write only as much as necessary. Be brief!

Write only as much as necessary. Be brief! 1 CIS371 Computer Organization and Design Midterm Exam Prof. Martin Thursday, March 15th, 2012 This exam is an individual-work exam. Write your answers on these pages. Additional pages may be attached

More information

CS Computer Architecture

CS Computer Architecture CS 35101 Computer Architecture Section 600 Dr. Angela Guercio Fall 2010 An Example Implementation In principle, we could describe the control store in binary, 36 bits per word. We will use a simple symbolic

More information

CS 2506 Computer Organization II Test 2. Do not start the test until instructed to do so! printed

CS 2506 Computer Organization II Test 2. Do not start the test until instructed to do so! printed Instructions: Print your name in the space provided below. This examination is closed book and closed notes, aside from the permitted fact sheet, with a restriction: 1) one 8.5x11 sheet, both sides, handwritten

More information

Question Score 1 / 19 2 / 19 3 / 16 4 / 29 5 / 17 Total / 100

Question Score 1 / 19 2 / 19 3 / 16 4 / 29 5 / 17 Total / 100 NAME: Login name: Computer Science 461 Midterm Exam March 10, 2010 3:00-4:20pm This test has five (5) questions. Put your name on every page, and write out and sign the Honor Code pledge before turning

More information

Computer Science 425 Distributed Systems CS 425 / ECE 428. Fall 2013

Computer Science 425 Distributed Systems CS 425 / ECE 428. Fall 2013 Computer Science 425 Distributed Systems CS 425 / ECE 428 Fall 2013 Indranil Gupta (Indy) October 10, 2013 Lecture 14 Networking Reading: Chapter 3 (relevant parts) 2013, I. Gupta, K. Nahrtstedt, S. Mitra,

More information

CSCI4211: Introduction to Computer Networks Fall 2017 Homework Assignment 2

CSCI4211: Introduction to Computer Networks Fall 2017 Homework Assignment 2 CSCI411: Introduction to Computer Networks Fall 017 Homework Assignment Due 11:59pm Friday November 17 Instructions: 1. Please submit your homework using the on-line electronic submission system (via Moodle)

More information

DEPLOYMENT GUIDE Version 1.1. DNS Traffic Management using the BIG-IP Local Traffic Manager

DEPLOYMENT GUIDE Version 1.1. DNS Traffic Management using the BIG-IP Local Traffic Manager DEPLOYMENT GUIDE Version 1.1 DNS Traffic Management using the BIG-IP Local Traffic Manager Table of Contents Table of Contents Introducing DNS server traffic management with the BIG-IP LTM Prerequisites

More information

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007 CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007 Question 344 Points 444 Points Score 1 10 10 2 10 10 3 20 20 4 20 10 5 20 20 6 20 10 7-20 Total: 100 100 Instructions: 1. Question

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi

Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture - 8 Consistency and Redundancy in Project networks In today s lecture

More information

Goals for Today s Class. EE 122: Networks & Protocols. What Global (non-digital) Communication Network Do You Use Every Day?

Goals for Today s Class. EE 122: Networks & Protocols. What Global (non-digital) Communication Network Do You Use Every Day? Goals for Today s Class EE 122: & Protocols Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee122/fa09 (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues

More information

EECS 470 Midterm Exam Winter 2008 answers

EECS 470 Midterm Exam Winter 2008 answers EECS 470 Midterm Exam Winter 2008 answers Name: KEY unique name: KEY Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: #Page Points 2 /10

More information

EXTENDING THE PRIORITY CEILING PROTOCOL USING READ/WRITE AFFECTED SETS MICHAEL A. SQUADRITO A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE

EXTENDING THE PRIORITY CEILING PROTOCOL USING READ/WRITE AFFECTED SETS MICHAEL A. SQUADRITO A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE EXTENDING THE PRIORITY CEILING PROTOCOL USING READ/WRITE AFFECTED SETS BY MICHAEL A. SQUADRITO A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2001.1.1 COMPUTER SCIENCE TRIPOS Part IA Monday 4 June 2001 1.30 to 4.30 Paper 1 Answer two questions from Section A, and one question from each of Sections B, C, D and E. Submit the answers in six

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START MIDTERM EXAMINATION #2 NETWORKING CONCEPTS 03-60-367-01 U N I V E R S I T Y O F W I N D S O R - S c h o o l o f C o m p u t e r S c i e n c e Fall 2011 Question Paper NOTE: Students may take this question

More information

Technische Universität München Zentrum Mathematik

Technische Universität München Zentrum Mathematik Technische Universität München Zentrum Mathematik Prof. Dr. Dr. Jürgen Richter-Gebert, Bernhard Werner Projective Geometry SS 208 https://www-m0.ma.tum.de/bin/view/lehre/ss8/pgss8/webhome Solutions for

More information

Midterm II December 4 th, 2006 CS162: Operating Systems and Systems Programming

Midterm II December 4 th, 2006 CS162: Operating Systems and Systems Programming Fall 2006 University of California, Berkeley College of Engineering Computer Science Division EECS John Kubiatowicz Midterm II December 4 th, 2006 CS162: Operating Systems and Systems Programming Your

More information

Chapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction

Chapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction Chapter 6 Objectives Chapter 6 Memory Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured.

More information

Introduction to Visual Basic and Visual C++ Arithmetic Expression. Arithmetic Expression. Using Arithmetic Expression. Lesson 4.

Introduction to Visual Basic and Visual C++ Arithmetic Expression. Arithmetic Expression. Using Arithmetic Expression. Lesson 4. Introduction to Visual Basic and Visual C++ Arithmetic Expression Lesson 4 Calculation I154-1-A A @ Peter Lo 2010 1 I154-1-A A @ Peter Lo 2010 2 Arithmetic Expression Using Arithmetic Expression Calculations

More information

UNIT 2 TRANSPORT LAYER

UNIT 2 TRANSPORT LAYER Network, Transport and Application UNIT 2 TRANSPORT LAYER Structure Page No. 2.0 Introduction 34 2.1 Objective 34 2.2 Addressing 35 2.3 Reliable delivery 35 2.4 Flow control 38 2.5 Connection Management

More information

Software Development Techniques. 26 November Marking Scheme

Software Development Techniques. 26 November Marking Scheme Software Development Techniques 26 November 2015 Marking Scheme This marking scheme has been prepared as a guide only to markers. This is not a set of model answers, or the exclusive answers to the questions,

More information

CSc 520 final exam Wednesday 13 December 2000 TIME = 2 hours

CSc 520 final exam Wednesday 13 December 2000 TIME = 2 hours NAME s GRADE Prob 1 2 3 4 5 I II III Σ Max 12 12 12 12 12 26 26 26 100(+... ) Score CSc 520 exam Wednesday 13 December 2000 TIME = 2 hours Write all answers ON THIS EXAMINATION, and submit it IN THE ENVELOPE

More information

FINAL Wednesday, 30 th July 2008

FINAL Wednesday, 30 th July 2008 Data Communication & Networks Summer 2008 Semester FINAL Wednesday, 30 th July 2008 Total Time: 120 Minutes Total Marks: 80 Roll Number Name Section Signature: Signature of Invigilator Course Instructors:

More information

COMP/ELEC 429/556 Introduction to Computer Networks

COMP/ELEC 429/556 Introduction to Computer Networks COMP/ELEC 429/556 Introduction to Computer Networks Let s Build a Scalable Global Network - IP Some slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang T. S. Eugene

More information

CSCD 330 Network Programming

CSCD 330 Network Programming CSCD 330 Network Programming Lecture 9 Transport Layer Winter 2019 Reading: Begin Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Outline Overview

More information

Lexical Considerations

Lexical Considerations Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2010 Handout Decaf Language Tuesday, Feb 2 The project for the course is to write a compiler

More information

CS 3360 Design and Implementation of Programming Languages. Exam 1

CS 3360 Design and Implementation of Programming Languages. Exam 1 1 Spring 2017 (Thursday, March 9) Name: CS 3360 Design and Implementation of Programming Languages Exam 1 This test has 8 questions and pages numbered 1 through 7. Reminders This test is closed-notes and

More information

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [NETWORKING] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Why not spawn processes

More information

Distributed Systems Fall 2009 Final

Distributed Systems Fall 2009 Final 15-440 Distributed Systems Fall 2009 Final Name: Andrew: ID November 29, 2010 Please write your name and Andrew ID above before starting this exam. This exam has 10 pages, including this title page. Please

More information

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control Chapter 6 What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control OSI Model Hybrid Model Software outside the operating system Software inside

More information

TCP/IP-2. Transmission control protocol:

TCP/IP-2. Transmission control protocol: TCP/IP-2 Transmission control protocol: TCP and IP are the workhorses in the Internet. In this section we first discuss how TCP provides reliable, connectionoriented stream service over IP. To do so, TCP

More information

Shadows in the graphics pipeline

Shadows in the graphics pipeline Shadows in the graphics pipeline Steve Marschner Cornell University CS 569 Spring 2008, 19 February There are a number of visual cues that help let the viewer know about the 3D relationships between objects

More information

CS433 Final Exam. Prof Josep Torrellas. December 12, Time: 2 hours

CS433 Final Exam. Prof Josep Torrellas. December 12, Time: 2 hours CS433 Final Exam Prof Josep Torrellas December 12, 2006 Time: 2 hours Name: Instructions: 1. This is a closed-book, closed-notes examination. 2. The Exam has 6 Questions. Please budget your time. 3. Calculators

More information

Game Mathematics. (12 Week Lesson Plan)

Game Mathematics. (12 Week Lesson Plan) Game Mathematics (12 Week Lesson Plan) Lesson 1: Set Theory Textbook: Chapter One (pgs. 1 15) We begin the course by introducing the student to a new vocabulary and set of rules that will be foundational

More information

CSCI 466 Midterm Networks Fall 2013

CSCI 466 Midterm Networks Fall 2013 CSCI 466 Midterm Networks Fall 2013 Name: This exam consists of 6 problems on the following 7 pages. You may use your single-sided hand-written 8 ½ x 11 note sheet and a calculator during the exam. No

More information

CSC258: Computer Organization. Memory Systems

CSC258: Computer Organization. Memory Systems CSC258: Computer Organization Memory Systems 1 Summer Independent Studies I m looking for a few students who will be working on campus this summer. In addition to the paid positions posted earlier, I have

More information

MULTIPROCESSORS. Characteristics of Multiprocessors. Interconnection Structures. Interprocessor Arbitration

MULTIPROCESSORS. Characteristics of Multiprocessors. Interconnection Structures. Interprocessor Arbitration MULTIPROCESSORS Characteristics of Multiprocessors Interconnection Structures Interprocessor Arbitration Interprocessor Communication and Synchronization Cache Coherence 2 Characteristics of Multiprocessors

More information

Midterm solutions. n f 3 (n) = 3

Midterm solutions. n f 3 (n) = 3 Introduction to Computer Science 1, SE361 DGIST April 20, 2016 Professors Min-Soo Kim and Taesup Moon Midterm solutions Midterm solutions The midterm is a 1.5 hour exam (4:30pm 6:00pm). This is a closed

More information

Distributed Systems Exam 1 Review. Paul Krzyzanowski. Rutgers University. Fall 2016

Distributed Systems Exam 1 Review. Paul Krzyzanowski. Rutgers University. Fall 2016 Distributed Systems 2016 Exam 1 Review Paul Krzyzanowski Rutgers University Fall 2016 Question 1 Why does it not make sense to use TCP (Transmission Control Protocol) for the Network Time Protocol (NTP)?

More information

Notes on Bloom filters

Notes on Bloom filters Computer Science B63 Winter 2017 Scarborough Campus University of Toronto Notes on Bloom filters Vassos Hadzilacos A Bloom filter is an approximate or probabilistic dictionary. Let S be a dynamic set of

More information

ECSE-6600: Internet Protocols Spring 2007, Exam 1 SOLUTIONS

ECSE-6600: Internet Protocols Spring 2007, Exam 1 SOLUTIONS ECSE-6600: Internet Protocols Spring 2007, Exam 1 SOLUTIONS Time: 75 min (strictly enforced) Points: 50 YOUR NAME (1 pt): Be brief, but DO NOT omit necessary detail {Note: Simply copying text directly

More information

ECSE 414 Fall 2014 Final Exam Solutions

ECSE 414 Fall 2014 Final Exam Solutions ECSE 414 Fall 2014 Final Exam Solutions Question 1 a. The five main layers of the internet protocol stack, along with the service provided by each, and the place where each is implemented are as follows:

More information

Hardware-based Speculation

Hardware-based Speculation Hardware-based Speculation Hardware-based Speculation To exploit instruction-level parallelism, maintaining control dependences becomes an increasing burden. For a processor executing multiple instructions

More information

Internetworking With TCP/IP

Internetworking With TCP/IP Internetworking With TCP/IP Vol II: Design, Implementation, and Internals SECOND EDITION DOUGLAS E. COMER and DAVID L. STEVENS Department of Computer Sciences Purdue University West Lafayette, IN 47907

More information

EECS 122: Introduction to Communication Networks Final Exam Solutions

EECS 122: Introduction to Communication Networks Final Exam Solutions EECS 22: Introduction to Communication Networks Final Exam Solutions Problem. (6 points) How long does it take for a 3000-byte IP packet to go from host A to host B in the figure below. Assume the overhead

More information

Solutions to Problem Set 1

Solutions to Problem Set 1 CSCI-GA.3520-001 Honors Analysis of Algorithms Solutions to Problem Set 1 Problem 1 An O(n) algorithm that finds the kth integer in an array a = (a 1,..., a n ) of n distinct integers. Basic Idea Using

More information

Framework for Design of Dynamic Programming Algorithms

Framework for Design of Dynamic Programming Algorithms CSE 441T/541T Advanced Algorithms September 22, 2010 Framework for Design of Dynamic Programming Algorithms Dynamic programming algorithms for combinatorial optimization generalize the strategy we studied

More information

Entrance exam - Informatics

Entrance exam - Informatics Entrance exam - Informatics Name and Surname fill in the field Application No. Test Sheet No. 15 Algorithms and data structures 1 Which of the listed data structures is most suitable (w.r.t. time and memory

More information