Binomial Heaps. Bryan M. Franklin
|
|
- Suzan Ford
- 5 years ago
- Views:
Transcription
1 Binomial Heaps Bryan M. Franklin 1
2 Tradeoffs Worst Case Operation Binary Heap Binomial Heap Make-Heap Θ(1) Θ(1) Insert Θ(lg n) O(lg n) Minimum Θ(1) O(lg n) Extract-Min Θ(lg n) Θ(lg n) Union Θ(n) Θ(lg n) Decrease-Key Θ(lg n) Θ(lg n) Delete Θ(lg n) Θ(lg n) 2
3 Binomial Trees Definition: B0: A binomial tree with a single node. Bk: Two Bk-1 binomial trees connected such that one tree has the other as its leftmost child. 3
4 Binomial Trees B0 B1 B2 B3 B4 4
5 Binomial Tree Properties Properties of binomial tree Bk: 2 k nodes Height of tree is k ( ) k Exactly nodes at depth i i Root has degree k Children of the root from left to right are binomial trees Bk-1, Bk-2, Bk-3,..., B0 5
6 Binomial Tree Properties k=4 2 4 =16 nodes B4 2 k Nodes 6
7 Binomial Tree Properties k=4 height is B4 Height of k 7
8 Binomial Tree Properties ( ) 4 0 ( ) 4 1 ( ) 4 2 ( ) 4 3 ( ) 4 4 =1 =4 =6 =4 =1 B4 Exactly ( ) k i nodes at depth i 8
9 Binomial Tree Properties 4 k=4 Root s degree is B0 Root s children: B1 B3, B2, B1, B0 0 B3 B2 Root has degree k 9
10 Representation Left-child, Right-sibling (ch. 10) Parent Right-sibling Left-child 10
11 Representation Example B4 11
12 Binomial Heap A binomial heap is a set, H, of binomial trees, such that: 1) Each tree in H satisfies the min-heap property. 2) The root of every tree in H has a unique degree. 12
13 Binomial Heaps head[h1] head[h2]
14 Heap Operations Make-Heap( ) Minimum(H) Union(H1, H2) Insert(H, x) Extract-Min(H) Decrease-Key(H, x, k) Delete(H, x) 14
15 Make-Binomial-Heap Make-Binomial-Heap() 1 H new Heap 2 head[h] NIL 3 return H 15
16 Binomial-Heap- Minimum Binomial-Heap-Minimum(H) 1 y NIL 2 x head[h] 3 min 4 while x NIL 5 do if key[x] < min 6 then min key[x] 7 y x 8 x sibling[x] 9 return y 16
17 Binomial-Heap- Minimum x y head[h1] NIL min= 17
18 Binomial-Heap- Minimum y x head[h1] NIL min=12 18
19 Binomial-Heap- Minimum y x head[h1] NIL min=7 19
20 Binomial-Heap- Minimum y x head[h1] NIL min=7 20
21 Binomial-Link Binomial-Link(y, z) 1 p[y] z 2 sibling[y] child[z] 3 child[z] y 4 degree[z] degree[z]+1 21
22 Binomial-Link y z 22
23 Binomial-Link p[y] y z 23
24 Binomial-Link sibling[y] y z 24
25 Binomial-Link child[z] y z 25
26 Binomial-Heap-Union Binomial-Heap-Union(H 1,H 2 ) 1 H Make-Binomial-Heap() 2 head[h] Binomial-Heap-Merge(H 1,H 2 ) 3 free H 1 and H 2, but not the lists they point to 4 if head[h] =NIL 5 then return H 6 prev-x NIL 7 x head[h] 8 next-x sibling[x] 9 while next-x NIL 10 do if degree[x] degree[next-x] or (sibling[next-x] NIL and degree[sibling[next-x]] = degree[x]) 11 then prev-x x 12 x next-x 13 else if key[x] key[next-x] 14 then sibling[x] sibling[next-x] 15 Binomial-Link(next-x,x) 16 else if prev-x = NIL 17 then head[h] next-x 18 else sibling[prev-x] next-x 19 Binomial-Link(x, next-x) 20 x next-x 21 next-x sibling[x] 22 return H 26
27 Binomial-Heap-Union head[h1] head[h2]
28 Binomial-Heap-Union x next-x head[h]
29 Binomial-Heap-Union x next-x head[h]
30 Binomial-Heap-Union prev-x x next-x head[h]
31 Binomial-Heap-Union prev-x x next-x head[h]
32 Binomial-Heap-Union prev-x head[h] 12 x 3 next-x
33 Binomial-Heap-Insert Binomial-Heap-Insert(H, x) 1 H Make-Binomial-Heap() 2 p[x] NIL 3 child[x] NIL 4 sibling[x] NIL 5 degree[x] 0 6 head[h ] x 7 H Binomial-Heap-Union(H, H ) 33
34 Extract-Min Binomial-Heap-Extract-Min(H) 1 find root in H with minimum key value, remove as x 2 H Make-Binomial-Heap() 3 fill heap H by linking x s children in reverse order 4 H Binomial-Heap-Union(H, H ) 5 return x 34
35 Extract-Min head[h]
36 Extract-Min x head[h]
37 Extract-Min x 1 head[h]
38 Extract-Min x 1 head[h] head[h ]
39 Extract-Min x 1 head[h]
40 Decrease-Key Binomial-Heap-Decrease-Key(H, x, k) 1 if k>key[x] 2 then error new key is larger than current key 3 key[x] k 4 y x 5 z p[y] 6 while z NIL and key[y] < key[z] 7 do exchange key[y] key[z] 8 exchange satellite data as well 9 y z 10 z p[y] 40
41 Decrease-Key head[h] x
42 Decrease-Key head[h] x
43 Decrease-Key head[h] z y
44 Decrease-Key head[h] z y
45 Decrease-Key head[h] z y
46 Decrease-Key head[h] z y
47 Decrease-Key head[h] z 6 y
48 Decrease-Key head[h] z 6 y
49 Delete Binomial-Heap-Delete(H, x) 1 Binomial-Heap-Decrease-Key(H, x, ) 2 Binomial-Heap-Extract-Min() 49
50 The End 50
Fibonacci Heaps CLRS: Chapter 20 Last Revision: 21/09/04
Fibonacci Heaps CLRS: Chapter 20 Last Revision: 21/09/04 1 Binary heap Binomial heap Fibonacci heap Procedure (worst-case) (worst-case) (amortized) Make-Heap Θ(1) Θ(1) Θ(1) Insert Θ(lg n) O(lg n) Θ(1)
More informationDesign and Analysis of Algorithms
Design and Analysis of Algorithms Instructor: Sharma Thankachan Lecture 9: Binomial Heap Slides modified from Dr. Hon, with permission 1 About this lecture Binary heap supports various operations quickly:
More informationDesign and Analysis of Algorithms 演算法設計與分析. Lecture 9 November 19, 2014 洪國寶
Design and Analysis of Algorithms 演算法設計與分析 Lecture 9 November 19, 2014 洪國寶 1 Outline Advanced data structures Binary heaps(review) Binomial heaps Fibonacci heaps Data structures for disjoint sets 2 Mergeable
More informationDesign and Analysis of Algorithms. Lecture 9 November 20, 2013 洪國寶
Design and Analysis of Algorithms 演算法設計與分析 Lecture 9 November 20, 2013 洪國寶 1 Outline Advanced data structures Binary heaps (review) Binomial heaps Fibonacci heaps Dt Data structures t for disjoint dijitsets
More information3/7/13. Binomial Tree. Binomial Tree. Binomial Tree. Binomial Tree. Number of nodes with respect to k? N(B o ) = 1 N(B k ) = 2 N(B k-1 ) = 2 k
//1 Adapted from: Kevin Wayne B k B k B k : a binomial tree with the addition of a left child with another binomial tree Number of nodes with respect to k? N(B o ) = 1 N(B k ) = 2 N( ) = 2 k B 1 B 2 B
More informationCOMP Analysis of Algorithms & Data Structures
COMP 3170 - Analysis of Algorithms & Data Structures Shahin Kamali Binomial Heaps CLRS 6.1, 6.2, 6.3 University of Manitoba Priority queues A priority queue is an abstract data type formed by a set S of
More informationDesign and Analysis of Algorithms 演算法設計與分析. Lecture 8 November 16, 2016 洪國寶
Design and Analysis of Algorithms 演算法設計與分析 Lecture 8 November 6, 206 洪國寶 Outline Review Amortized analysis Advanced data structures Binary heaps Binomial heaps Fibonacci heaps Data structures for disjoint
More informationHeaps. c P. Flener/IT Dept/Uppsala Univ. AD1, FP, PK II Heaps 1
Heaps (Version of 21 November 2005) A min-heap (resp. max-heap) is a data structure with fast extraction of the smallest (resp. largest) item (in O(lg n) time), as well as fast insertion (also in O(lg
More informationPRIORITY QUEUES. binary heaps d-ary heaps binomial heaps Fibonacci heaps. Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley
PRIORITY QUEUES binary heaps d-ary heaps binomial heaps Fibonacci heaps Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley http://www.cs.princeton.edu/~wayne/kleinberg-tardos Last updated
More informationAlgorithms PRIORITY QUEUES. binary heaps d-ary heaps binomial heaps Fibonacci heaps. binary heaps d-ary heaps binomial heaps Fibonacci heaps
Priority queue data type Lecture slides by Kevin Wayne Copyright 05 Pearson-Addison Wesley http://www.cs.princeton.edu/~wayne/kleinberg-tardos PRIORITY QUEUES binary heaps d-ary heaps binomial heaps Fibonacci
More informationData Structures. Binomial Heaps Fibonacci Heaps. Haim Kaplan & Uri Zwick December 2013
Data Structures Binomial Heaps Fibonacci Heaps Haim Kaplan & Uri Zwick December 13 1 Heaps / Priority queues Binary Heaps Binomial Heaps Lazy Binomial Heaps Fibonacci Heaps Insert Find-min Delete-min Decrease-key
More informationBinary and Binomial Heaps. Disclaimer: these slides were adapted from the ones by Kevin Wayne
Binary and Binomial Heaps Disclaimer: these slides were adapted from the ones by Kevin Wayne Priority Queues Supports the following operations. Insert element x. Return min element. Return and delete minimum
More informationSuccessor. CS 361, Lecture 19. Tree-Successor. Outline
Successor CS 361, Lecture 19 Jared Saia University of New Mexico The successor of a node x is the node that comes after x in the sorted order determined by an in-order tree walk. If all keys are distinct,
More informationPriority queue. Advanced Algorithmics (6EAP) Binary heap. Heap/Priority queue. Binomial heaps: Merge two heaps.
Priority queue Advanced Algorithmics (EAP) MTAT.03.38 Heaps Jaak Vilo 0 Spring Insert Q, x Retrieve x from Q s.t. x.value is min (or max) Sorted linked list: O(n) to insert x into right place O() access-
More information2 all subsequent nodes. 252 all subsequent nodes. 401 all subsequent nodes. 398 all subsequent nodes. 330 all subsequent nodes
¼ À ÈÌ Ê ½¾ ÈÊÇ Ä ÅË ½µ ½¾º¾¹½ ¾µ ½¾º¾¹ µ ½¾º¾¹ µ ½¾º¾¹ µ ½¾º ¹ µ ½¾º ¹ µ ½¾º ¹¾ µ ½¾º ¹ µ ½¾¹¾ ½¼µ ½¾¹ ½ (1) CLR 12.2-1 Based on the structure of the binary tree, and the procedure of Tree-Search, any
More informationAdministration CSE 326: Data Structures
Administration CSE : Data Structures Binomial Queues Neva Cherniavsky Summer Released today: Project, phase B Due today: Homework Released today: Homework I have office hours tomorrow // Binomial Queues
More informationCh 10 Trees. Introduction to Trees. Tree Representations. Binary Tree Nodes. Tree Traversals. Binary Search Trees
Ch 10 Trees Introduction to Trees Tree Representations Binary Tree Nodes Tree Traversals Binary Search Trees 1 Binary Trees A binary tree is a finite set of elements called nodes. The set is either empty
More informationHeaps
AdvancedAlgorithmics (4AP) Heaps Jaak Vilo 2009 Spring Jaak Vilo MTAT.03.190 Text Algorithms 1 Heaps http://en.wikipedia.org/wiki/category:heaps_(structure) Binary heap http://en.wikipedia.org/wiki/binary_heap
More information1 Binomial Tree. Structural Properties:
Indian Institute of Information Technology Design and Manufacturing, Kancheepuram Chennai 600, India An Autonomous Institute under MHRD, Govt of India http://www.iiitdm.ac.in COM 0 Advanced Data Structures
More informationPriority Queues. Fibonacci Heap
ibonacci Heap hans to Sartaj Sahni for the original version of the slides Operation mae-heap insert find-min delete-min union decrease-ey delete Priority Queues Lined List Binary Binomial Heaps ibonacci
More informationPriority Queues 9/10. Binary heaps Leftist heaps Binomial heaps Fibonacci heaps
Priority Queues 9/10 Binary heaps Leftist heaps Binomial heaps Fibonacci heaps Priority queues are important in, among other things, operating systems (process control in multitasking systems), search
More informationSET 1C Binary Trees. 2. (i) Define the height of a binary tree or subtree and also define a height balanced (AVL) tree. (2)
SET 1C Binary Trees 1. Construct a binary tree whose preorder traversal is K L N M P R Q S T and inorder traversal is N L K P R M S Q T 2. (i) Define the height of a binary tree or subtree and also define
More informationPractical session No. 5 Trees
Practical session No. 5 Trees Tree Binary Tree k-tree Trees as Basic Data Structures ADT that stores elements hierarchically. Each node in the tree has a parent (except for the root), and zero or more
More informationHeaps. Heap/Priority queue. Binomial heaps: Advanced Algorithmics (4AP) Heaps Binary heap. Binomial heap. Jaak Vilo 2009 Spring
.0.00 Heaps http://en.wikipedia.org/wiki/category:heaps_(structure) Advanced Algorithmics (4AP) Heaps Jaak Vilo 00 Spring Binary heap http://en.wikipedia.org/wiki/binary_heap Binomial heap http://en.wikipedia.org/wiki/binomial_heap
More informationPractical session No. 5 Trees
Practical session No. 5 Trees Tree Trees as Basic Data Structures ADT that stores elements hierarchically. With the exception of the root, each node in the tree has a parent and zero or more children nodes.
More informationAdvanced Algorithmics (4AP) Heaps
Advanced Algorithmics (4AP) Heaps Jaak Vilo 2009 Spring Jaak Vilo MTAT.03.190 Text Algorithms 1 Heaps http://en.wikipedia.org/wiki/category:heaps_(structure) Binary heap http://en.wikipedia.org/wiki/binary
More information> asympt( ln( n! ), n ); n 360n n
8.4 Heap Sort (heapsort) We will now look at our first (n ln(n)) algorithm: heap sort. It will use a data structure that we have already seen: a binary heap. 8.4.1 Strategy and Run-time Analysis Given
More informationOutline for this Week
Binomial Heaps Outline for this Week Binomial Heaps (Today) A simple, fexible, and versatile priority queue. Lazy Binomial Heaps (Today) A powerful building block for designing advanced data structures.
More informationMeld(Q 1,Q 2 ) merge two sets
Priority Queues MakeQueue Insert(Q,k,p) Delete(Q,k) DeleteMin(Q) Meld(Q 1,Q 2 ) Empty(Q) Size(Q) FindMin(Q) create new empty queue insert key k with priority p delete key k (given a pointer) delete key
More informationThe potential function φ for the amortized analysis of an operation on Fibonacci heap at time (iteration) i is given by the following equation:
Indian Institute of Information Technology Design and Manufacturing, Kancheepuram Chennai 600 127, India An Autonomous Institute under MHRD, Govt of India http://www.iiitdm.ac.in COM 01 Advanced Data Structures
More informationSplay Trees. Splay Trees - 1
Splay Trees In balanced tree schemes, explicit rules are followed to ensure balance. In splay trees, there are no such rules. Search, insert, and delete operations are like in binary search trees, except
More information1.6 Heap ordered trees
1.6 Heap ordered trees A heap ordered tree is a tree satisfying the following condition. The key of a node is not greater than that of each child if any In a heap ordered tree, we can not implement find
More information1 Solutions to Tute09
s to Tute0 Questions 4. - 4. are straight forward. Q. 4.4 Show that in a binary tree of N nodes, there are N + NULL pointers. Every node has outgoing pointers. Therefore there are N pointers. Each node,
More informationInitializing A Max Heap. Initializing A Max Heap
Initializing A Max Heap 3 4 5 6 7 8 70 8 input array = [-,,, 3, 4, 5, 6, 7, 8,, 0, ] Initializing A Max Heap 3 4 5 6 7 8 70 8 Start at rightmost array position that has a child. Index is n/. Initializing
More informationFibonacci Heaps Y Y o o u u c c an an s s u u b b m miitt P P ro ro b blle e m m S S et et 3 3 iin n t t h h e e b b o o x x u u p p fro fro n n tt..
Fibonacci Heaps You You can can submit submit Problem Problem Set Set 3 in in the the box box up up front. front. Outline for Today Review from Last Time Quick refresher on binomial heaps and lazy binomial
More informationUNIT VI TREES. Marks - 14
UNIT VI TREES Marks - 14 SYLLABUS 6.1 Non-linear data structures 6.2 Binary trees : Complete Binary Tree, Basic Terms: level number, degree, in-degree and out-degree, leaf node, directed edge, path, depth,
More informationOutline for this Week
Binomial Heaps Outline for this Week Binomial Heaps (Today) A simple, flexible, and versatile priority queue. Lazy Binomial Heaps (Today) A powerful building block for designing advanced data structures.
More informationHomework #4. CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class
Homework #4 CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class o Grades depend on neatness and clarity. o Write your answers with enough detail about your approach and concepts
More informationCOSC160: Data Structures Binary Trees. Jeremy Bolton, PhD Assistant Teaching Professor
COSC160: Data Structures Binary Trees Jeremy Bolton, PhD Assistant Teaching Professor Outline I. Binary Trees I. Implementations I. Memory Management II. Binary Search Tree I. Operations Binary Trees A
More informationPARELLIZATION OF DIJKSTRA S ALGORITHM: COMPARISON OF VARIOUS PRIORITY QUEUES
PARELLIZATION OF DIJKSTRA S ALGORITHM: COMPARISON OF VARIOUS PRIORITY QUEUES WIKTOR JAKUBIUK, KESHAV PURANMALKA 1. Introduction Dijkstra s algorithm solves the single-sourced shorest path problem on a
More informationOutline for Today. Quick refresher on binomial heaps and lazy binomial heaps. An important operation in many graph algorithms.
Fibonacci Heaps Outline for Today Review from Last Time Quick refresher on binomial heaps and lazy binomial heaps. The Need for decrease-key An important operation in many graph algorithms. Fibonacci Heaps
More informationChapter 7 Sorting (Part II)
Data Structure t Chapter 7 Sorting (Part II) Angela Chih-Wei i Tang Department of Communication Engineering National Central University Jhongli, Taiwan 2010 Spring Outline Heap Max/min heap Insertion &
More informationStanford University, CS 106X Homework Assignment 5: Priority Queue Binomial Heap Optional Extension
Stanford University, CS 106X Homework Assignment 5: Priority Queue Binomial Heap Optional Extension Extension description by Jerry Cain. This document describes an optional extension to the assignment.
More informationBasic Data Structures. Figure 8.1 Lists, stacks, and queues. Terminology for Stacks. Terminology for Lists. Chapter 8: Data Abstractions
Chapter 8: Data Abstractions Computer Science: An Overview Tenth Edition by J. Glenn Brookshear Chapter 8: Data Abstractions 8.1 Data Structure Fundamentals 8.2 Implementing Data Structures 8.3 A Short
More informationOn the Optimality of a Family of Binary Trees Techical Report TR
On the Optimality of a Family of Binary Trees Techical Report TR-011101-1 Dana Vrajitoru and William Knight Indiana University South Bend Department of Computer and Information Sciences Abstract In this
More informationCSE 21 Winter 2016 Homework 6 Due: Wednesday, May 11, 2016 at 11:59pm. Instructions
CSE 1 Winter 016 Homework 6 Due: Wednesday, May 11, 016 at 11:59pm Instructions Homework should be done in groups of one to three people. You are free to change group members at any time throughout the
More informationAVL Trees. The height of the left subtree can differ from the height of the right subtree by at most 1.
AVL Trees In order to have a worst case running time for insert and delete operations to be O(log n), we must make it impossible for there to be a very long path in the binary search tree. The first balanced
More informationCSCI 104 B-Trees (2-3, 2-3-4) and Red/Black Trees. Mark Redekopp David Kempe
1 CSCI 104 B-Trees (2-3, 2-3-4) and Red/Black Trees Mark Redekopp David Kempe 2 An example of B-Trees 2-3 TREES 3 Definition 2-3 Tree is a tree where Non-leaf nodes have 1 value & 2 children or 2 values
More informationBinary Tree Applications
Binary Tree Applications Lecture 32 Section 19.2 Robb T. Koether Hampden-Sydney College Wed, Apr 17, 2013 Robb T. Koether (Hampden-Sydney College) Binary Tree Applications Wed, Apr 17, 2013 1 / 46 1 Expression
More informationFundamental Algorithms - Surprise Test
Technische Universität München Fakultät für Informatik Lehrstuhl für Effiziente Algorithmen Dmytro Chibisov Sandeep Sadanandan Winter Semester 007/08 Sheet Model Test January 16, 008 Fundamental Algorithms
More informationCSE 100: TREAPS AND RANDOMIZED SEARCH TREES
CSE 100: TREAPS AND RANDOMIZED SEARCH TREES Midterm Review Practice Midterm covered during Sunday discussion Today Run time analysis of building the Huffman tree AVL rotations and treaps Huffman s algorithm
More informationCS360 Homework 14 Solution
CS360 Homework 14 Solution Markov Decision Processes 1) Invent a simple Markov decision process (MDP) with the following properties: a) it has a goal state, b) its immediate action costs are all positive,
More informationCSCE 750, Fall 2009 Quizzes with Answers
CSCE 750, Fall 009 Quizzes with Answers Stephen A. Fenner September 4, 011 1. Give an exact closed form for Simplify your answer as much as possible. k 3 k+1. We reduce the expression to a form we ve already
More informationIntroduction to Greedy Algorithms: Huffman Codes
Introduction to Greedy Algorithms: Huffman Codes Yufei Tao ITEE University of Queensland In computer science, one interesting method to design algorithms is to go greedy, namely, keep doing the thing that
More information4/8/13. Part 6. Trees (2) Outline. Balanced Search Trees. 2-3 Trees Trees Red-Black Trees AVL Trees. to maximum n. Tree A. Tree B.
art 6. Trees (2) C 200 Algorithms and Data tructures 1 Outline 2-3 Trees 2-3-4 Trees Red-Black Trees AV Trees 2 Balanced earch Trees Tree A Tree B to maximum n Tree D 3 1 Balanced earch Trees A search
More informationIt is used when neither the TX nor RX knows anything about the statistics of the source sequence at the start of the transmission
It is used when neither the TX nor RX knows anything about the statistics of the source sequence at the start of the transmission -The code can be described in terms of a binary tree -0 corresponds to
More informationSupporting Information
Supporting Information Novikoff et al. 0.073/pnas.0986309 SI Text The Recap Method. In The Recap Method in the paper, we described a schedule in terms of a depth-first traversal of a full binary tree,
More informationPractice Second Midterm Exam II
CS13 Handout 34 Fall 218 November 2, 218 Practice Second Midterm Exam II This exam is closed-book and closed-computer. You may have a double-sided, 8.5 11 sheet of notes with you when you take this exam.
More informationLecture 5: Tuesday, January 27, Peterson s Algorithm satisfies the No Starvation property (Theorem 1)
Com S 611 Spring Semester 2015 Advanced Topics on Distributed and Concurrent Algorithms Lecture 5: Tuesday, January 27, 2015 Instructor: Soma Chaudhuri Scribe: Nik Kinkel 1 Introduction This lecture covers
More informationOutline. Objective. Previous Results Our Results Discussion Current Research. 1 Motivation. 2 Model. 3 Results
On Threshold Esteban 1 Adam 2 Ravi 3 David 4 Sergei 1 1 Stanford University 2 Harvard University 3 Yahoo! Research 4 Carleton College The 8th ACM Conference on Electronic Commerce EC 07 Outline 1 2 3 Some
More informationOn the Optimality of a Family of Binary Trees
On the Optimality of a Family of Binary Trees Dana Vrajitoru Computer and Information Sciences Department Indiana University South Bend South Bend, IN 46645 Email: danav@cs.iusb.edu William Knight Computer
More informationLearning From Data: MLE. Maximum Likelihood Estimators
Learning From Data: MLE Maximum Likelihood Estimators 1 Parameter Estimation Assuming sample x1, x2,..., xn is from a parametric distribution f(x θ), estimate θ. E.g.: Given sample HHTTTTTHTHTTTHH of (possibly
More informationChapter 16. Binary Search Trees (BSTs)
Chapter 16 Binary Search Trees (BSTs) Search trees are tree-based data structures that can be used to store and search for items that satisfy a total order. There are many types of search trees designed
More informationLecture l(x) 1. (1) x X
Lecture 14 Agenda for the lecture Kraft s inequality Shannon codes The relation H(X) L u (X) = L p (X) H(X) + 1 14.1 Kraft s inequality While the definition of prefix-free codes is intuitively clear, we
More informationCOMPUTER SCIENCE 20, SPRING 2014 Homework Problems Recursive Definitions, Structural Induction, States and Invariants
COMPUTER SCIENCE 20, SPRING 2014 Homework Problems Recursive Definitions, Structural Induction, States and Invariants Due Wednesday March 12, 2014. CS 20 students should bring a hard copy to class. CSCI
More information9.7 Binomial Queues. This excerpt made available by permission of Robert Sedgewick, and of Pearson Education, Inc.
406 9.7 CH lgorithms, 3rd dition, in Java, arts 1-4: Fundamentals, Data tructures, orting, and earching. obert edgewick, ddison-esley 2002. his excerpt made available by permission of obert edgewick, and
More informationInformation Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 15 Adaptive Huffman Coding Part I Huffman code are optimal for a
More informationHeap Building Bounds
Heap Building Bounds Zhentao Li 1 and Bruce A. Reed 2 1 School of Computer Science, McGill University zhentao.li@mail.mcgill.ca 2 School of Computer Science, McGill University breed@cs.mcgill.ca Abstract.
More informationStudy Guide: Chapter 5, Sections 1 thru 3 (Probability Distributions)
Study Guide: Chapter 5, Sections 1 thru 3 (Probability Distributions) Name SHORT ANSWER. 1) Fill in the missing value so that the following table represents a probability distribution. x 1 2 3 4 P(x) 0.09
More informationLecture 10/12 Data Structures (DAT037) Ramona Enache (with slides from Nick Smallbone and Nils Anders Danielsson)
Lecture 10/12 Data Structures (DAT037) Ramona Enache (with slides from Nick Smallbone and Nils Anders Danielsson) Balanced BSTs: Problem The BST operahons take O(height of tree), so for unbalanced trees
More informationSplay Trees Goodrich, Tamassia, Dickerson Splay Trees 1
Spla Trees v 6 3 8 4 2004 Goodrich, Tamassia, Dickerson Spla Trees 1 Spla Trees are Binar Search Trees BST Rules: entries stored onl at internal nodes kes stored at nodes in the left subtree of v are less
More informationEcon 6900: Statistical Problems. Instructor: Yogesh Uppal
Econ 6900: Statistical Problems Instructor: Yogesh Uppal Email: yuppal@ysu.edu Lecture Slides 4 Random Variables Probability Distributions Discrete Distributions Discrete Uniform Probability Distribution
More informationchapter 13: Binomial Distribution Exercises (binomial)13.6, 13.12, 13.22, 13.43
chapter 13: Binomial Distribution ch13-links binom-tossing-4-coins binom-coin-example ch13 image Exercises (binomial)13.6, 13.12, 13.22, 13.43 CHAPTER 13: Binomial Distributions The Basic Practice of Statistics
More informationBinary Search Tree and AVL Trees. Binary Search Tree. Binary Search Tree. Binary Search Tree. Techniques: How does the BST works?
Binary Searc Tree and AVL Trees Binary Searc Tree A commonly-used data structure for storing and retrieving records in main memory PUC-Rio Eduardo S. Laber Binary Searc Tree Binary Searc Tree A commonly-used
More informationCSE 417 Algorithms. Huffman Codes: An Optimal Data Compression Method
CSE 417 Algorithms Huffman Codes: An Optimal Data Compression Method 1 Compression Example 100k file, 6 letter alphabet: a 45% b 13% c 12% d 16% e 9% f 5% File Size: ASCII, 8 bits/char: 800kbits 2 3 >
More informationSection 5.5 Factoring Trinomials, a = 1
Section 5.5 Factoring Trinomials, a = 1 REVIEW Each of the following trinomials have a lead coefficient of 1. Let s see how they factor in a similar manner to those trinomials in Section 5.4. Example 1:
More informationThe Tree Data Model. Laura Kovács
The Tree Data Model Laura Kovács Trees (Baumstrukturen) Definition Trees are sets of points, called nodes (Knoten) and lines, called edges (Kanten), connecting two distinct nodes, such that: n 2 n 3 n
More informationOn the Power of Structural Violations in Priority Queues
On the Power of Structural Violations in Priority Queues Amr Elmasry 1, Claus Jensen 2, Jyrki Katajainen 2, 1 Comuter Science Deartment, Alexandria University Alexandria, Egyt 2 Deartment of Comuting,
More informationData Structures, Algorithms, & Applications in C++ ( Chapter 9 )
) Priority Queues Two kinds of priority queues: Min priority queue. Max priority queue. Min Priority Queue Collection of elements. Each element has a priority or key. Supports following operations: isempty
More informationCOMP251: Amortized Analysis
COMP251: Amortized Analysis Jérôme Waldispühl School of Computer Science McGill University Based on (Cormen et al., 2009) T n = 2 % T n 5 + n( What is the height of the recursion tree? log ( n log, n log
More informationPrepared by Pamela Peterson Drake, James Madison University
Prepared by Pamela Peterson Drake, James Madison University Contents Step 1: Calculate the spot rates corresponding to the yields 2 Step 2: Calculate the one-year forward rates for each relevant year ahead
More informationExample 1: Identify the following random variables as discrete or continuous: a) Weight of a package. b) Number of students in a first-grade classroom
Section 5-1 Probability Distributions I. Random Variables A variable x is a if the value that it assumes, corresponding to the of an experiment, is a or event. A random variable is if it potentially can
More informationMath 14 Lecture Notes Ch. 4.3
4.3 The Binomial Distribution Example 1: The former Sacramento King's DeMarcus Cousins makes 77% of his free throws. If he shoots 3 times, what is the probability that he will make exactly 0, 1, 2, or
More informationRandom Variables CHAPTER 6.3 BINOMIAL AND GEOMETRIC RANDOM VARIABLES
Random Variables CHAPTER 6.3 BINOMIAL AND GEOMETRIC RANDOM VARIABLES Essential Question How can I determine whether the conditions for using binomial random variables are met? Binomial Settings When the
More informationAn Analysis of Forward Pruning. University of Maryland Institute for Systems Research. College Park, MD 20742
Proc. AAAI-94, to appear. An Analysis of Forward Pruning Stephen J. J. Smith Dana S. Nau Department of Computer Science Department of Computer Science, and University of Maryland Institute for Systems
More informationOn the Power of Structural Violations in Priority Queues
On the Power of Structural Violations in Priority Queues Amr Elmasry 1 Claus Jensen 2 Jyrki Katajainen 2 1 Deartment of Comuter Engineering and Systems, Alexandria University Alexandria, Egyt 2 Deartment
More informationThe exam is closed book, closed calculator, and closed notes except your three crib sheets.
CS 188 Spring 2016 Introduction to Artificial Intelligence Final V2 You have approximately 2 hours and 50 minutes. The exam is closed book, closed calculator, and closed notes except your three crib sheets.
More informationSection 7.4 Additional Factoring Techniques
Section 7.4 Additional Factoring Techniques Objectives In this section, you will learn to: To successfully complete this section, you need to understand: Factor trinomials when a = 1. Multiplying binomials
More informationRandom Variables. Chapter 6: Random Variables 2/2/2014. Discrete and Continuous Random Variables. Transforming and Combining Random Variables
Chapter 6: Random Variables Section 6.3 The Practice of Statistics, 4 th edition For AP* STARNES, YATES, MOORE Random Variables 6.1 6.2 6.3 Discrete and Continuous Random Variables Transforming and Combining
More informationFiscal Software User s Guide, BSA April Chapter 6 - Project Maintenance
Chapter 6 - Project Maintenance This Section Includes: 6.1 Project Definition and Use 6.2 Adding Projects 6.3 Managing Deferred Projects 6.3.1 Allocations 6.3.1.1 Monthly Allocation of Deferred Values
More informationBITTIGER #11. Oct
BITTIGER #11 Oct 22 2016 PROBLEM LIST A. Five in a Row brute force, implementation B. Building Heap data structures, divide and conquer C. Guess Number with Lower or Higher Hints dynamic programming, mathematics
More informationHigh Frequency Trading Strategy Based on Prex Trees
High Frequency Trading Strategy Based on Prex Trees Yijia Zhou, 05592862, Financial Mathematics, Stanford University December 11, 2010 1 Introduction 1.1 Goal I am an M.S. Finanical Mathematics student
More informationLecture 8 Feb 16, 2017
CS 4: Advanced Algorithms Spring 017 Prof. Jelani Nelson Lecture 8 Feb 16, 017 Scribe: Tiffany 1 Overview In the last lecture we covered the properties of splay trees, including amortized O(log n) time
More informationAlgorithms and Networking for Computer Games
Algorithms and Networking for Computer Games Chapter 4: Game Trees http://www.wiley.com/go/smed Game types perfect information games no hidden information two-player, perfect information games Noughts
More informationLesson 9: Heuristic Search and A* Search
CAP 5602 Summer, 2011 Lesson 9: Heuristic Search and A* Search The topics 1. Heuristic Search 2. The A* Search 3. An example of the use of A* search. 1. Heuristic Search The idea of heuristics is to attach
More informationEXERCISES ACTIVITY 6.7
762 CHAPTER 6 PROBABILITY MODELS EXERCISES ACTIVITY 6.7 1. Compute each of the following: 100! a. 5! I). 98! c. 9P 9 ~~ d. np 9 g- 8Q e. 10^4 6^4 " 285^1 f-, 2 c 5 ' sq ' sq 2. How many different ways
More informationBinomial Distributions
Binomial Distributions (aka Bernouli s Trials) Chapter 8 Binomial Distribution an important class of probability distributions, which occur under the following Binomial Setting (1) There is a number n
More informationLecture 4: Divide and Conquer
Lecture 4: Divide and Conquer Divide and Conquer Merge sort is an example of a divide-and-conquer algorithm Recall the three steps (at each level to solve a divideand-conquer problem recursively Divide
More information1. (9; 3ea) The table lists the survey results of 100 non-senior students. Math major Art major Biology major
Math 54 Test #2(Chapter 4, 5, 6, 7) Name: Show all necessary work for full credit. You may use graphing calculators for your calculation, but you must show all detail and use the proper notations. Total
More informationF U N C T I O N A L P E A R L S Purely Functional 1-2 Brother Trees
Under consideration for publication in J. Functional Programming 1 F U N C T I O N A L P E A R L S Purely Functional 1-2 Brother Trees RALF HINZE Computing Laboratory University of Oxford Wolfson Building,
More information