Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-252 Οντοκεντρικός Προγραµµατισµός Βασίλης Χριστοφίδης
|
|
- Ēᾍιδης Σπανού
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Ονοµατεπώνυµο: Αριθµός Μητρώου: Άσκηση 1 (15 µονάδες) Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-252 Οντοκεντρικός Προγραµµατισµός Βασίλης Χριστοφίδης Τελική Εξέταση (3 ώρες) Ηµεροµηνία: 24 Ιουνίου 2003 (α) Θεωρήστε το παρακάτω πρόγραµµα Java: /*1 class A extends Exception{ /*2 class B extends Exception{ /*3 class Main{ /*4 public static void main(string[] args){ /*5 try{ /*6 try{ /*7 if(args.length==0) throw new A(); /*8 else throw new B(); /*9 /*10 catch(a a){ /*11 System.out.println("11"); /*12 /*13 finally{ /*14 System.out.println("14"); /*15 /*16 System.out.println("16"); /*17 /*18 catch(b b){ /*19 System.out.println("19"); /*20 /*21 System.out.println("21"); /*22 /*23 1. Τι τυπώνεται στην στάνταρ έξοδο του προγράµµατος όταν στην εντολή της γραµµής 7 προκύπτει µια εξαίρεση τύπου Α? Εξηγήστε σύντοµα την απάντησή σας. It prints The exception is caught by the inner handler. After that, the control flow continues normally.
2 2. Τι τυπώνεται στην στάνταρ έξοδο του προγράµµατος όταν στην εντολή της γραµµής 8 προκύπτει µια εξαίρεση τύπου Β? Εξηγήστε σύντοµα την απάντησή σας. It prints The exception propagates to the outer handler; on the way, the inner finally block gets executed. After the outer handler, the control flow continues normally. (β) Θεωρήστε το παρακάτω πρόγραµµα Java: 1 try { 2 <try-block> 3 finally { 4 <finally-blocκ> 1. Ξαναγράψτε τον παραπάνω κώδικα χρησιµοποιώντας try-catch αλλά χωρίς finally, υποθέτοντας ότι µόνο η δηµιουργία εξαιρέσεων µπορεί να προκαλέσει την απότοµη διακοπή εκτέλεσης των εντολών του παραπάνω προγράµµατος. try { <try-block> catch(throwable e) { <finally-block> throw e; <finally-block> 2. Είναι ο προηγούµενος µετασχηµατισµός σωστός όταν επίσης θεωρήσουµε ότι εντολές επιστροφής (return) µπορούν επίσης να προκαλέσουν την απότοµη διακοπή εκτέλεσης των εντολών του παραπάνω προγράµµατος? Αν η απάντησή σας είναι καταφατική εξηγήστε γιατί. Αν η απάντησή σας είναι αρνητική εξηγήστε τους κυριότερους λόγους και προτείνετε έναν τρόπο που εξασφαλίζει την σωστή εκτέλεση του µετασχηµατισµένου προγράµµατος. No, it does not, because in Java, a "return" cannot be caught as an exception. One way to make it work would be to rewrite all "return" statements by throws of a special kind of ReturnException, and putting a try-catch for ReturnExceptions around every call. Άσκηση 2 (15 µονάδες) Απαντήστε στις παρακάτω ερωτήσεις χρησιµοποιώντας την ακόλουθη ιεραρχία κλάσεων, όπου η κλάση στην κορυφή της ιεραρχίας έχει τις αφαιρετικές (abstract) µεθόδους play() και stop().
3 (α) Πώς µπορείτε να υλοποιήσετε την παραπάνω ιεραρχία κλάσεων σε µια γλώσσα προγραµµατισµού η οποία δεν υποστηρίζει κληρονοµικότητα κλάσεων? Ξανασχεδιάστε το παραπάνω διάγραµµα για την λύση που προτείνετε και εξηγήστε τις διαφορές µεταξύ του αρχικού και του τροποποιηµένου διαγράµµατος καθώς και τους κυριότερους λόγους για τους οποίους η χρήση της κληρονοµικότητας καθιστά ευκολότερη την σχεδίαση και συντήρηση της παραπάνω ιεραρχίας κλάσεων. There are two valid solutions to this question: 1) have two classes, CD and DVD, that implement everything from the initial system, plus all functionality from the Recording abstract class; 2) change the Recording abstract class to an interface, move all attributes from Recording to the subclasses, make methods setcolour() and move() abstract, and implement setcolour() and move() in both children classes. The downside of either solution, as compared with the initial solution using inheritance, is that code common to both CD and DVD will have to be duplicated. This is not so much a problem at development-time as it is during maintenance, where changing one of the methods should require changing it in both CD and DVD classes. Corollaries to this are that there is an increased amount of code to read and understand, and the chance of making a mistake/typo increases with the size of the code base. A further downside of the first solution is that dynamic binding will not be possible.
4 (β) Υλοποιήστε σε ένα πρόγραµµα Java την σχεδίαση που σας δόθηκε στην αρχή της άσκησης. Στην απάντησή σας να συµπεριλάβετε µόνο τις µεταβλητές στιγµιοτύπων και τις µεθόδους που αναγράφονται στο διάγραµµα ενώ η υλοποίηση των µεθόδων πρέπει να είναι κενή. Σηµειώστε ότι τα σύµβολα πριν από τις µεταβλητές στιγµιοτύπων και τις µεθόδους της κάθε κλάσης υποδεικνύουν τα αντίστοιχα δικαιώµατα εξουσιοδοτηµένης πρόσβασης: συν (+) για public, πλην (-) για private και δίεση (#) για protected. public abstract class Recording { protected String title; protected int length, year; public abstract void play(); public abstract void stop(); public void setlength() { public void setyear() { public class CD extends Recording { private String artist; public void play() { public void stop() {
5 public class DVD extends Recording { private String producer, director; public void play() { public void stop() { Άσκηση 3 (10 µονάδες) Εξετάστε το παρακάτω πρόγραµµα Java: public class Z { void show(z z) { System.out.println( Z ); public class Y extends Z { void show(y y) { System.out.println( Y ); public class X { public static void main(string[] args) { Z c = new Z(); Y b = new Y(); Z a = new Y(); c.show(b); b.show(c); b.show(a); a.show(a); b.show((y)a); a.show(c); b.show(b); Τι τυπώνεται στην στάνταρ έξοδο του προγράµµατος όταν εκτελέσουµε τον κώδικα της κλάσης X? The output is: Z (2 points) Z (1 point) Z (1 point) Z (1 point) Y (1 point) Z (2 points) Y (2 points) A common mistake was identifying the first line as an error by considering that c is of class Z and Z has no method that takes a parameter of class Y. However, since b is of class Y it is also of class Z and therefore the method inside Z fits.
6 Άσκηση 4 (20 µονάδες) (α) ώστε την υλοποίηση της παρακάτω διεπαφής Java η οποία υποστηρίζει (µη-αναδροµικά) κλειδώµατα (locks) ανάγνωσης (read) και γραφής (write), µε ένα µόνο συγγραφέα ή οποιοδήποτε αριθµό αναγνωστών, οι οποίοι µπορούν να αποκτούν το κλείδωµα (locks) οποιαδήποτε χρονική στιγµή: interface ReadWriteMonitor { void acquirereadlock() throws InterruptedException; void releasereadlock(); void acquirewritelock() throws InterruptedException; void releasewritelock(); Ακριβέστερα, όταν µια προγραµµατιστική ίνα (thread) απαιτεί ένα κλείδωµα γραψίµατος (write lock), µπορεί να αποκτήσει το κλείδωµα γραψίµατος ακόµα και αν άλλες προγραµµατιστικές ίνες (threads) απαιτούν συνεχώς κλειδώµατα ανάγνωσης (read locks). Με άλλα λόγια, µια προγραµµατιστική ίνα δεν µπορεί να περιµένει µέχρι την στιγµή όπου καµία άλλη δεν επιθυµεί να αποκτήσει ένα κλείδωµα ανάγνωσης γιατί αυτή η στιγµή µπορεί να µην έρθει ποτέ. class MyLock implements ReadWriteMonitor { int readlocks; boolean writelocked; int writelocksdesired; void synchronized acquirereadlock() throws InterruptedException { while (writelocked writelocksdesired!= 0) wait(); readlocks++; void synchronized releasereadlock() { readlocks--; notifyall(); void synchronized acquirewritelock() throws InterruptedException { writelocksdesired++; try { while (writelocked readlocks!= 0 ) wait(); writelocked = true; finally { writelocksdesired--; void synchronized releasewritelock() { writelocked = false; notifyall();
7 (β) ώστε την υλοποίηση της παρακάτω διεπαφής Java: interface TodoList { void add(runnable r); Για την υλοποίησή σας θεωρήστε την παρακάτω κλάση QueueImpl, η οποία υλοποιεί την παρακάτω διεπαφή: interface Queue { void enqueue(object r); Object dequeue(); int size(); Η µέθοδος dequeue() επιστρέφει null όταν δεν υπάρχει κανένα αντικείµενο για αποµάκρυνση από την ουρά. Η κλάση QueueImpl δεν είναι ασφαλής ως προς την χρήση προγραµµατιστικών ινών (not thread safe) δηλ. δεν χρησιµοποιεί τεχνικές συγχρονισµού (synchronization). Η υλοποίηση της ToDoList πρέπει να µπορεί να καλεί τις µεθόδους εκτέλεσης κάθε εργασίας (task) που προστίθεται στην ToDoList, µία µία κάθε χρονική στιγµή, και µε την σειρά που έχουν προστεθεί. Εντούτοις, η µέθοδος add() πρέπει να µπορεί να τερµατίζει την εκτέλεσή της αµέσως µόλις µια εργασία προστεθεί στην ToDoList. Σηµειώστε ότι ανά πάσα χρονική στιγµή µόνο µία εργασία µπορεί να εκτελείται. class MyTodoList implements TodoList, Runnable { QueueImpl q; synchronized public void add(runnable r) { if (q == null) { q = new QueueImpl(); Thread t = new Thread(this); t.setdaemon(true); t.start(); q.enqueue(r); notifyall(); public void run() { while (true) { Runnable r; synchronized(this) { while (q.size() <= 0) try { wait(); catch (InterruptedException e) {; r = q.dequeue(); ; r.run();
8 Άσκηση 5 (30 µονάδες) (α) Σχολιάστε τα πλεονεκτήµατα και µειονεκτήµατα των παρακάτω υλοποιήσεων συλλογών δεδοµένων Java. 1. Κάτω από ποιες προϋποθέσεις είναι προτιµότερο ένα διάνυσµα (Vector) από έναν πίνακα (array) για τον χειρισµό µια συλλογής δεδοµένων που απαιτεί πρόσβαση µε την χρήση δεικτών θέσης (index)? A Vector is preferable to an Array under several different circumstances. For example, it is often preferable when the number of elements that will be needed is unknown. This is because it will do the reallocate-and-grow automatically. It is also a better choice if common operations such as contains(), indexof(), or clone() are required. These could be written for an Array -- but they're there and ready to use in a Vector. 2. Πότε είναι προτιµότερο ένα διάνυσµα (Vector) από µία απλή ή διπλή συνδεδεµένη λίστα (singly or doubly linked list)? Με άλλα λόγια, ποιες λειτουργίες (operations) είναι πιο αποδοτικές σε ένα διάνυσµα από ότι σε µια συνδεδεµένη λίστα? Vectors are preferable to linked lists any time random access is required. Internally, the elements of vectors are organized in a contiguous chunk of memory, which allows individual elements to be located by address after only a simple computation. Linked lists, by contrast, require step-by-step traversal. Additionally, if the size is known in advance, and memory utilization is a concern, Vectors are preferable to linked lists, even if memory access will be sequential. Vectors require one reference per object, instead of two references per object in a singly linked list (or three per in a doubly linked list). Each element in a doubly linked list contains not only one reference for the data and one reference for the next element -- but also an additional element for the predecessor. From the perspective of operations, accessing (or mutating) by index is more efficient in an index, as is adding at the end, if the Vector is large enough (doesn't require growth). On the other hand, doubly linked lists should only be used when the extra reference is worth the space. What does this reference buy us? It makes it possibly to (without recursion or painful loops-within-loops) traverse the list backwards. It also simplifies removing within the list or at the tail. Furthermore, each-and-every mutator that does not require this predecessor pointer is made more complicated, and as a consequence, slower, by its presence. For example, it needs to be updated each time a node is added or removed -- even if it wasn't used to find the node. So, singly linked lists should be used any time it isn't often necessary to traverse the list in reverse, or remove nodes other than at the beginning of the list.
9 (β) Για κάθε ένα από τα παρακάτω προβλήµατα, περιγράψτε ποιος πιστεύετε ότι είναι ο καταλληλότερος ΑΤ (Αφαιρετικός Τύπος εδοµένων) για να σχεδιάσετε (ως προς την λειτουργικότητά της διεπαφής που προσφέρει) και να υλοποιήσετε (ως προς τις επιδόσεις της συγκεκριµένης δοµής δεδοµένων που χρησιµοποιεί) τις λειτουργίες που σας ζητούνται στην εκφώνηση. 1. Υποθέστε ότι εργάζεστε σε µια εταιρία λογισµικού που σχεδιάζει µια εφαρµογή διαχείρισης του χαρτοφυλακίου µετοχών ενός επενδυτή. Καλείστε να διαλέξετε τον καταλληλότερο ΑΤ από το Java Collection Framework για να αναπαραστήσετε ένα χαρτοφυλάκιο δηλ µια συλλογή µετοχών που ανά πάσα στιγµή έχει στην κατοχή του ένας επενδυτής. Η εφαρµογή πρέπει να επιτρέπει την εισαγωγή µιας µετοχής στο χαρτοφυλάκιο όταν αυτή αγοράζεται από έναν επενδυτή, την αφαίρεση µιας µετοχής από το χαρτοφυλάκιο όταν αυτή πωλείται από τον επενδυτή, και την πρόσβαση σε οποιαδήποτε µετοχή του χαρτοφυλακίου όταν ο επενδυτής θέλει να τυπώσει σχετικές πληροφορίες για µια συγκεκριµένη µετοχή. There are a few basic ways to design and implement a solution to this problem: use a Vector or Sequence implemented using either a dynamic array or a linked list. The List ADT is unacceptable, as it does not provide methods used to access an arbitrary stock in the portfolio. Both the Vector ADT and Sequence ADT contain such methods, and for that reason are acceptable. Either ADT could be implemented using a dynamic array or a linked list. Given this situation, each would provide a similar level of efficiency. Using a dynamic array, the insert operation and the remove operation would both run in time that is O(n) as the array would have to grow or shrink, respectively, in the worst case. Accessing an arbitrary stock in the portfolio would take O(1) time, as the array can instantly access any of its elements. Using a linked list, the insert operation would run in O(1) time, as stocks could be inserted at either the first or last position in constant time; the problem does not describe the need to insert stocks at arbitrary locations in the structure. Both removing and accessing an arbitrary stock from the portfolio would take O(n) time, as links must be followed from the head of the list to the stock that is to be removed or accessed. 2. Υποθέστε ότι εργάζεστε σε µια εταιρία λογισµικού που σχεδιάζει ένα διαλογικό σύστηµα οδήγησης αυτοκινήτων σε πραγµατικό χρόνο. Το σύστηµα πρέπει να προσφέρει κατάλληλες βοήθειες οδήγησης στον οδηγό του αυτοκινήτου, και να παρακολουθεί την πορεία του στον δρόµο καθώς ο οδηγός κατευθύνεται προς τον προορισµό του ακολουθώντας πιστά τις βοήθειες που του δίνονται από το σύστηµα. Καλείστε να διαλέξετε τον καταλληλότερο ΑΤ από το Java Collection Framework για να αναπαραστήσετε µία συλλογή από βοήθειες οδήγησης για να φτάσει ένας οδηγός από την αφετηρία στον προορισµό του. Το σύστηµα πρέπει να επιτρέπει την αφαίρεση µιας βοήθειας οδήγησης από την αρχή της συλλογής
10 όταν αυτή ακολουθείται από τον οδηγό, να προσφέρει την επόµενη βοήθεια µετά από µία συγκεκριµένη βοήθεια οδήγησης, και να ελέγχει εάν υπολείπονται βοήθειες στην συλλογή δηλ εάν ο οδηγός έχει φτάσει τελικά στον προορισµό του. The most appropriate way to solve this problem would be to use the List ADT. It is possible to use any of the other linear ADTs as well, but the List ADT best fits the description of the problem: remove from the front of the structure, access an element immediately after a given element, and test if the structure is empty. If the chosen linear ADT is implemented using a linked list, each of the methods could easily run in time that is O(1). For this reason, a linked list is the most appropriate choice. It is possible to implement the chosen linear ADT using a dynamic array and still have each of the methods run in time that is O(1). If the array is never shrunk as directions are removed from the structure, each of the methods will run in constant time, but memory will be wasted. It is more appropriate to assume that the remove operation would take O(n) time if a dynamic array implementation were used. For that reason, a linked list is a more appropriate choice of implementation. Ασκηση 6 (30 µονάδες) Θεωρήστε την παρακάτω διεπαφή Java που καθορίζει το συµβόλαιο του ΑΤ Ουρά µε Προτεραιότητα (Priority Queue ADT): * Required methods for the Priority Queue ADT. public interface IPriorityQueue { * Inserts the given key and element into this. akey key for the item anelement element for the item public void insertitem(comparable key, Object element); Returns a highest priority element in this. public Object highest(); Returns a highest priority key in this. public Comparable highestkey(); * Removes the highest priority item from this, * and returns its element. public Object removehighest();
11 Υποθέστε επίσης µια κλάση Item της οποίας ο ορισµός περιλαµβάνει δύο µεταβλητές στιγµιοτύπων: µία public Comparable µε το όνοµα key και µία public Object µε το όνοµα element. Μπορείτε επίσης να υποθέσετε ότι η κλάση Item διαθέτει επίσης µία µέθοδο κατασκευής αντικειµένων που παίρνει σαν παραµέτρους εισόδου ένα Comparable και ένα Object, και αποθηκεύει αυτά τα αντικείµενα αντιστοίχως στις µεταβλητές στιγµιοτύπων key και element του αντικειµένου Item που δηµιουργείται. ώστε µια κλάση UnsortedPriorityQueue που υλοποιεί την διεπαφή IPriorityQueue αποθηκεύοντας τα κλειδιά (keys) και τα στοιχεία (elements) της σε ένα µη ταξινοµηµένο Vector. Βεβαιωθείτε ότι η υλοποίησή σας λαµβάνει υπόψη της όλες τις συνθήκες λαθών που προβλέπονται στο συµβόλαιο του ΑΤ και δηµιουργήστε µια εξαίρεση RuntimeException σε κάθε περίπτωση που ένα λάθος εµφανίζεται. Για την ακριβέστερη διόρθωση της άσκησης ενσωµατώστε στον κώδικά σας κατάλληλα σχόλια Javadoc. import java.util.vector; * IPriorityQueue implementation using a sorted vector * to hold its keys and elements. Jeff Raab public class UnsortedPriorityQueue implements IPriorityQueue { Vector used to hold the keys and elements. protected Vector items = new Vector(); Constructs a new unsorted priority queue. public UnsortedPriorityQueue() { * Inserts the given key and element into this. akey key for the item anelement element for the item insertitem(1, A) into { : {(1, A) insertitem(0, B) into {(1, A) : * {(1, A), (0, B) public void insertitem(comparable key,object element){ items.add(new Item(key, element)); * Returns a highest priority element in this. highest() on { throws an exception highest() on {(1, A), (0, B) returns B
12 public Object highest() { if (items.isempty()) { throw new RuntimeException( Queue is empty ); Object o = items.elementat(highestindex()); Item i = (Item)o; return i.element; * Returns a highest priority key in this. highestkey() on { throws an exception highestkey() on {(1, A), (0, B) returns 0 public Comparable highestkey() { if (items.isempty()) { throw new RuntimeException( Queue is empty ); Object o = items.elementat(highestindex()); Item i = (Item)o; return i.key; * Removes the highest priority item from this, * and returns its element. removehighest() on { throws an exception removehighest() on {(1, A), (0, B) * returns B public Object removehighest() { if (items.isempty()) { throw new RuntimeException( Queue is empty ); Object o = items.remove(highestindex()); Item i = (Item)o; return i.element; Returns the index of the highest key in this. private int highestindex() { int min = 0; Item minitem = (Item)items.elementAt(0); for (int i = 1; i < items.size(); i++) { Item anitem = (Item)items.elementAt(i); if (anitem.key.compareto(minitem.key) < 0) { min = i; minitem = anitem; return min;
Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012
Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-252 Αντικειµενοστρεφής Προγραµµατισµός Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012 Θέμα 1 Θέμα 2 Θέμα 3 Θέμα 4 Θέμα
Διαβάστε περισσότεραΔομές Δεδομένων - Εργαστήριο 2. Λίστες
Λίστες Λίστες (Lists) : Συλλογή δεδομένων σε δυναμικά δεσμευμένους κόμβους. Κάθε κόμβος περιέχει συνδέσεις προς άλλους κόμβους. Προσπέλαση -στού κόμβου διατρέχοντας όλους τους προηγούμενους. Πολλές παραλλαγές
Διαβάστε περισσότεραInstruction Execution Times
1 C Execution Times InThisAppendix... Introduction DL330 Execution Times DL330P Execution Times DL340 Execution Times C-2 Execution Times Introduction Data Registers This appendix contains several tables
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 133: ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΑΣΤΗΡΙΟ 3 Javadoc Tutorial
ΕΡΓΑΣΤΗΡΙΟ 3 Javadoc Tutorial Introduction Το Javadoc είναι ένα εργαλείο που παράγει αρχεία html (παρόμοιο με τις σελίδες στη διεύθυνση http://docs.oracle.com/javase/8/docs/api/index.html) από τα σχόλια
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο
Διαβάστε περισσότεραEE512: Error Control Coding
EE512: Error Control Coding Solution for Assignment on Finite Fields February 16, 2007 1. (a) Addition and Multiplication tables for GF (5) and GF (7) are shown in Tables 1 and 2. + 0 1 2 3 4 0 0 1 2 3
Διαβάστε περισσότερα2 Composition. Invertible Mappings
Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan Composition. Invertible Mappings In this section we discuss two procedures for creating new mappings from old ones, namely,
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
Ουρές Ουρές Περίληψη Η ΟυράΑΔΤ Υλοποίηση με κυκλικό πίνακα Αυξανόμενη Ουρά βασισμένη σε πίνακα Interface ουράς στην C++ Η Ουρά ADT Η ΑΔΤ Ουρά αποθηκεύει αυθαίρετα αντικείμενα Οι εισαγωγές και διαγραφές
Διαβάστε περισσότεραHOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:
HOMEWORK 4 Problem a For the fast loading case, we want to derive the relationship between P zz and λ z. We know that the nominal stress is expressed as: P zz = ψ λ z where λ z = λ λ z. Therefore, applying
Διαβάστε περισσότεραΠρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής
Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Να γραφεί πρόγραμμα το οποίο δέχεται ως είσοδο μια ακολουθία S από n (n 40) ακέραιους αριθμούς και επιστρέφει ως έξοδο δύο ακολουθίες από θετικούς ακέραιους
Διαβάστε περισσότεραThe Simply Typed Lambda Calculus
Type Inference Instead of writing type annotations, can we use an algorithm to infer what the type annotations should be? That depends on the type system. For simple type systems the answer is yes, and
Διαβάστε περισσότεραΠεριεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5
Περιεχόµενα 1 Εισαγωγή στις οµές εδοµένων 3 2 Στοίβα (Stack) 5 i ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ii Πληροφορίες Εργαστηρίου Σκοπός του εργαστηρίου Το εργαστήριο οµές εδοµένων αποσκοπεί στην εφαρµογή των τεχνολογιών
Διαβάστε περισσότεραΔομές Δεδομένων & Ανάλυση Αλγορίθμων. 3ο Εξάμηνο. Ουρά (Queue) Υλοποίηση της με τη βοήθεια πίνακα. http://aetos.it.teithe.gr/~demos/teaching_gr.
Δομές Δεδομένων & Ανάλυση Αλγορίθμων 3ο Εξάμηνο Ουρά (Queue) Υλοποίηση της με τη βοήθεια πίνακα http://aetos.it.teithe.gr/~demos/teaching_gr.html Δημοσθένης Σταμάτης Τμήμα Μηχανικών Πληροφορικής ATEI ΘΕΣΣΑΛΟΝΙΚΗΣ
Διαβάστε περισσότεραPhysical DB Design. B-Trees Index files can become quite large for large main files Indices on index files are possible.
B-Trees Index files can become quite large for large main files Indices on index files are possible 3 rd -level index 2 nd -level index 1 st -level index Main file 1 The 1 st -level index consists of pairs
Διαβάστε περισσότεραΣυστήματα Διαχείρισης Βάσεων Δεδομένων
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Φροντιστήριο 9: Transactions - part 1 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Tutorial on Undo, Redo and Undo/Redo
Διαβάστε περισσότεραOι βασικές πράξεις (λειτουργίες) που ορίζονται για τον τύπο στοίβα αναφέρονται παρακάτω:
3 ΣTOIBEΣ KAI OYPEΣ 3.1 ΣΤΟΙΒΕΣ Στοίβα (stack) είναι µία λίστα στην οποία νέα στοιχεία µπορούν να προστεθούν και να αφαιρεθούν µόνο από τη µία άκρη της (κορυφή της στοίβας). Συχνά µία στοίβα αναφέρεται
Διαβάστε περισσότεραSection 8.3 Trigonometric Equations
99 Section 8. Trigonometric Equations Objective 1: Solve Equations Involving One Trigonometric Function. In this section and the next, we will exple how to solving equations involving trigonometric functions.
Διαβάστε περισσότεραApproximation of distance between locations on earth given by latitude and longitude
Approximation of distance between locations on earth given by latitude and longitude Jan Behrens 2012-12-31 In this paper we shall provide a method to approximate distances between two points on earth
Διαβάστε περισσότερα(C) 2010 Pearson Education, Inc. All rights reserved.
Connectionless transmission with datagrams. Connection-oriented transmission is like the telephone system You dial and are given a connection to the telephone of fthe person with whom you wish to communicate.
Διαβάστε περισσότεραThe challenges of non-stable predicates
The challenges of non-stable predicates Consider a non-stable predicate Φ encoding, say, a safety property. We want to determine whether Φ holds for our program. The challenges of non-stable predicates
Διαβάστε περισσότερα1) Formulation of the Problem as a Linear Programming Model
1) Formulation of the Problem as a Linear Programming Model Let xi = the amount of money invested in each of the potential investments in, where (i=1,2, ) x1 = the amount of money invested in Savings Account
Διαβάστε περισσότεραΑντισταθμιστική ανάλυση
Αντισταθμιστική ανάλυση Θεωρήστε έναν αλγόριθμο Α που χρησιμοποιεί μια δομή δεδομένων Δ : Κατά τη διάρκεια εκτέλεσης του Α η Δ πραγματοποιεί μία ακολουθία από πράξεις. Παράδειγμα: Θυμηθείτε το πρόβλημα
Διαβάστε περισσότεραΟρισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα
ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων
Διαβάστε περισσότεραΔομές Δεδομένων. Δημήτρης Μιχαήλ. Υλοποίηση Δυαδικού Σωρού σε γλώσσα Java. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Δομές Δεδομένων Υλοποίηση Δυαδικού Σωρού σε γλώσσα Java Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Σωρός Μεγίστου ως ΑΤΔ Ένας σωρός μεγίστου (max heap) είναι ένας ΑΤΔ που
Διαβάστε περισσότεραConcrete Mathematics Exercises from 30 September 2016
Concrete Mathematics Exercises from 30 September 2016 Silvio Capobianco Exercise 1.7 Let H(n) = J(n + 1) J(n). Equation (1.8) tells us that H(2n) = 2, and H(2n+1) = J(2n+2) J(2n+1) = (2J(n+1) 1) (2J(n)+1)
Διαβάστε περισσότεραPartial Differential Equations in Biology The boundary element method. March 26, 2013
The boundary element method March 26, 203 Introduction and notation The problem: u = f in D R d u = ϕ in Γ D u n = g on Γ N, where D = Γ D Γ N, Γ D Γ N = (possibly, Γ D = [Neumann problem] or Γ N = [Dirichlet
Διαβάστε περισσότεραFinite Field Problems: Solutions
Finite Field Problems: Solutions 1. Let f = x 2 +1 Z 11 [x] and let F = Z 11 [x]/(f), a field. Let Solution: F =11 2 = 121, so F = 121 1 = 120. The possible orders are the divisors of 120. Solution: The
Διαβάστε περισσότεραC.S. 430 Assignment 6, Sample Solutions
C.S. 430 Assignment 6, Sample Solutions Paul Liu November 15, 2007 Note that these are sample solutions only; in many cases there were many acceptable answers. 1 Reynolds Problem 10.1 1.1 Normal-order
Διαβάστε περισσότεραLecture 2: Dirac notation and a review of linear algebra Read Sakurai chapter 1, Baym chatper 3
Lecture 2: Dirac notation and a review of linear algebra Read Sakurai chapter 1, Baym chatper 3 1 State vector space and the dual space Space of wavefunctions The space of wavefunctions is the set of all
Διαβάστε περισσότεραΑρχές Τεχνολογίας Λογισμικού Εργαστήριο
Αρχές Τεχνολογίας Λογισμικού Εργαστήριο Κωδικός Μαθήματος: TP323 Ώρες Εργαστηρίου: 2/εβδομάδα (Διαφάνειες Νίκου Βιδάκη) 1 JAVA Inheritance Εβδομάδα Νο. 3 2 Προηγούμενο μάθημα (1/2) Τι είναι αντικείμενο?
Διαβάστε περισσότεραΒασικές Έννοιες Δοµών Δεδοµένων
Δοµές Δεδοµένων Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλήµατος του ευσταθούς ταιριάσµατος Βασικές Έννοιες
Διαβάστε περισσότεραΑντικειµενοστρεφής Προγραµµατισµός
16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
Διαβάστε περισσότεραΤµήµα Πληροφορικής. Δοµές Δεδοµένων - Εργασία 1. Φθινοπωρινό Εξάµηνο Διδάσκων: E. Μαρκάκης. Στοίβες και Ουρές. Οικονοµικό Πανεπιστήµιο Αθηνών
Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2016 Δοµές Δεδοµένων - Εργασία 1 Διδάσκων: E. Μαρκάκης Στοίβες και Ουρές Σκοπός της εργασίας είναι η εξοικείωση µε βασικούς αφηρηµένους
Διαβάστε περισσότεραAssalamu `alaikum wr. wb.
LUMP SUM Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. LUMP SUM Lump sum lump sum lump sum. lump sum fixed price lump sum lump
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ 5 ΣΗΜΕΙΩΣΕΙΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2017-2018 ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ ΜΑΘΗΜΑ: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ουρές ΕΡΓΑΣΤΗΡΙΟ 5 ΣΗΜΕΙΩΣΕΙΣ Μια ουρά αποτελεί μια δομή δεδομένων στη λογική του First-in
Διαβάστε περισσότεραCHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS
CHAPTER 5 SOLVING EQUATIONS BY ITERATIVE METHODS EXERCISE 104 Page 8 1. Find the positive root of the equation x + 3x 5 = 0, correct to 3 significant figures, using the method of bisection. Let f(x) =
Διαβάστε περισσότεραΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ. Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής
Δοµές Δεδοµένων & Ανάλυση Αλγορίθµων 3ο Εξάµηνο Υλοποίηση Στοίβας και Ουράς µε Συνδεδεµένες Λίστες http://aetos.it.teithe.gr/~demos/teaching_gr.html Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής ATEI ΘΕΣΣΑΛΟΝΙΚΗΣ
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές Μαθήματα από το lab Υπενθύμιση: Η άσκηση ζητούσε να υλοποιήσετε μία κλάση vector που να διαχειρίζεται διανύσματα οποιουδήποτε
Διαβάστε περισσότεραTMA4115 Matematikk 3
TMA4115 Matematikk 3 Andrew Stacey Norges Teknisk-Naturvitenskapelige Universitet Trondheim Spring 2010 Lecture 12: Mathematics Marvellous Matrices Andrew Stacey Norges Teknisk-Naturvitenskapelige Universitet
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java
Διαβάστε περισσότεραΔομές Δεδομένων - Εργαστήριο 5. Ουρές Προτεραιότητας
Ουρές Προτεραιότητας Ουρά Προτεραιότητας (Priority Queue) Μια συλλογή αντικειμένων που χαρακτηρίζονται από μια συγκρίσιμη προτεραιότητα. Έχει την λογική εικόνα μιας δομής δεδομένων όπου, αντικείμενα εισέρχονται
Διαβάστε περισσότεραOther Test Constructions: Likelihood Ratio & Bayes Tests
Other Test Constructions: Likelihood Ratio & Bayes Tests Side-Note: So far we have seen a few approaches for creating tests such as Neyman-Pearson Lemma ( most powerful tests of H 0 : θ = θ 0 vs H 1 :
Διαβάστε περισσότεραPhys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)
Phys460.nb 81 ψ n (t) is still the (same) eigenstate of H But for tdependent H. The answer is NO. 5.5.5. Solution for the tdependent Schrodinger s equation If we assume that at time t 0, the electron starts
Διαβάστε περισσότεραΔιάλεξη 14: Δομές Δεδομένων ΙΙI (Λίστες και Παραδείγματα)
Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 14: Δομές Δεδομένων ΙΙI (Λίστες και Παραδείγματα) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 14-1 Περιεχόμενο
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 3/4/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Γιατί έλεγχος πρόσβασης? Προστασία ιδιωτικής πληροφορίας
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε
Διαβάστε περισσότεραBlock Ciphers Modes. Ramki Thurimella
Block Ciphers Modes Ramki Thurimella Only Encryption I.e. messages could be modified Should not assume that nonsensical messages do no harm Always must be combined with authentication 2 Padding Must be
Διαβάστε περισσότεραΔιάλεξη 08: Λίστες ΙΙ Κυκλικές Λίστες
ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 08: Λίστες ΙΙ Κυκλικές Λίστες Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Κυκλικές Απλά Συνδεδεμένες Λίστες - Κυκλικές Διπλά Συνδεδεμένες
Διαβάστε περισσότεραΠρόγραµµα 9.1 Πέρασµα δεδοµένων στην µνήµη
9.1 Γενικά Οι εφαρµογές που δηµιουργούνται από ένα προγραµµατιστή µπορούν ανά πασά στιγµή να καταρρεύσουν από κάποιο λάθος κατά την λειτουργία τους. Αυτές οι καταστάσεις συµβαίνουν από αµέλεια του προγραµµατιστή
Διαβάστε περισσότεραANSWERSHEET (TOPIC = DIFFERENTIAL CALCULUS) COLLECTION #2. h 0 h h 0 h h 0 ( ) g k = g 0 + g 1 + g g 2009 =?
Teko Classes IITJEE/AIEEE Maths by SUHAAG SIR, Bhopal, Ph (0755) 3 00 000 www.tekoclasses.com ANSWERSHEET (TOPIC DIFFERENTIAL CALCULUS) COLLECTION # Question Type A.Single Correct Type Q. (A) Sol least
Διαβάστε περισσότεραExample Sheet 3 Solutions
Example Sheet 3 Solutions. i Regular Sturm-Liouville. ii Singular Sturm-Liouville mixed boundary conditions. iii Not Sturm-Liouville ODE is not in Sturm-Liouville form. iv Regular Sturm-Liouville note
Διαβάστε περισσότεραΣύνοψη Προηγούμενου (1/2) Στοίβες, Ουρές, Ουρές Προτεραιότητας. Σύνοψη Προηγούμενου (2/2) Σημερινό Μάθημα. Πίνακες. Εισαγωγή, σε χρόνο O(1).
Σύνοψη Προηγούμενου (1/2) Στοίβες, Ουρές, Ουρές Προτεραιότητας Ορέστης Τελέλης telelis@unipi.gr Τμήμα Ψηφιακών Συστημάτων, Πανεπιστήμιο Πειραιώς Πίνακες Εισαγωγή, σε χρόνο O(1). Αναζήτηση, σε χρόνο O(n).
Διαβάστε περισσότεραΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ Κωδικός Θ: ΤΠ3001, Κωδικός Ε: ΤΠ3101 (ΜΕΥ/Υ) Ώρες (Θ - Ε): 4-2 Προαπαιτούμενα: Δρ. ΒΙΔΑΚΗΣ ΝΙΚΟΣ ΕΡΓΑΣΤΗΡΙΟ 6 Στοίβα (Stack) Stack Introduction Stack is one of the
Διαβάστε περισσότεραdepartment listing department name αχχουντσ ϕανε βαλικτ δδσϕηασδδη σδηφγ ασκϕηλκ τεχηνιχαλ αλαν ϕουν διξ τεχηνιχαλ ϕοην µαριανι
She selects the option. Jenny starts with the al listing. This has employees listed within She drills down through the employee. The inferred ER sttricture relates this to the redcords in the databasee
Διαβάστε περισσότεραΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011
Διάρκεια Διαγωνισμού: 3 ώρες Απαντήστε όλες τις ερωτήσεις Μέγιστο Βάρος (20 Μονάδες) Δίνεται ένα σύνολο από N σφαιρίδια τα οποία δεν έχουν όλα το ίδιο βάρος μεταξύ τους και ένα κουτί που αντέχει μέχρι
Διαβάστε περισσότεραST5224: Advanced Statistical Theory II
ST5224: Advanced Statistical Theory II 2014/2015: Semester II Tutorial 7 1. Let X be a sample from a population P and consider testing hypotheses H 0 : P = P 0 versus H 1 : P = P 1, where P j is a known
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Όλοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι του 10000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Αν κάπου κάνετε κάποιες υποθέσεις
Διαβάστε περισσότεραΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ Κωδικός Θ: ΤΠ3001, Κωδικός Ε: ΤΠ3101 (ΜΕΥ/Υ) Ώρες (Θ - Ε): 4-2 Προαπαιτούμενα: Δρ. ΒΙΔΑΚΗΣ ΝΙΚΟΣ ΕΡΓΑΣΤΗΡΙΟ 7 Ουρά (Queue) Queue Μάθημα: Δομές Δεδομένων & Αλγόριθμοι
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 11: Χειρισμός Σφαλμάτων Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Στην άσκηση αυτή θα υλοποιήσετε μια κλάση RandomVector η οποία διαχειρίζεται ένα τυχαίο διάνυσμα ακεραίων το οποίο μπορεί να έχει οποιοδήποτε
Διαβάστε περισσότεραΠανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 3. Στοίβες & Ουρές 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 19/10/2017 Ανακεφαλαίωση:
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.
Διαβάστε περισσότεραΠανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 3. Στοίβες & Ουρές 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 4/11/2016 Ανακεφαλαίωση:
Διαβάστε περισσότεραΕργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο
Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο Procedures and Functions Stored procedures and functions are named blocks of code that enable you to group and organize a series of SQL and PL/SQL
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 7: Ενθυλάκωση (encapsulation), Τροποποιητές(modifiers) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ενθυλάκωση -Τροποποιητές Πρόσβασης (Access Modifiers), public, protected, private,
Διαβάστε περισσότεραΣυλλογές, Στοίβες και Ουρές
Συλλογές, Στοίβες και Ουρές Σε πολλές εφαρμογές μας αρκεί η αναπαράσταση ενός δυναμικού συνόλου με μια δομή δεδομένων η οποία δεν υποστηρίζει την αναζήτηση οποιουδήποτε στοιχείου. Συλλογή (bag) : Επιστρέφει
Διαβάστε περισσότεραΣτο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά.
Διαστημικό εστιατόριο του (Μ)ΑστροΈκτορα Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά. Μόλις μια παρέα πελατών κάτσει σε ένα
Διαβάστε περισσότεραDynamic types, Lambda calculus machines Section and Practice Problems Apr 21 22, 2016
Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Dynamic types, Lambda calculus machines Apr 21 22, 2016 1 Dynamic types and contracts (a) To make sure you understand the
Διαβάστε περισσότεραCambridge International Examinations Cambridge International General Certificate of Secondary Education
Cambridge International Examinations Cambridge International General Certificate of Secondary Education GREEK 0543/04 Paper 4 Writing For Examination from 2015 SPECIMEN PAPER Candidates answer on the Question
Διαβάστε περισσότεραΓιπλυμαηική Δπγαζία. «Ανθπυποκενηπικόρ ζσεδιαζμόρ γέθςπαρ πλοίος» Φοςζιάνηρ Αθανάζιορ. Δπιβλέπυν Καθηγηηήρ: Νηθφιανο Π. Βεληίθνο
ΔΘΝΙΚΟ ΜΔΣΟΒΙΟ ΠΟΛΤΣΔΥΝΔΙΟ ΥΟΛΗ ΝΑΤΠΗΓΩΝ ΜΗΥΑΝΟΛΟΓΩΝ ΜΗΥΑΝΙΚΩΝ Γιπλυμαηική Δπγαζία «Ανθπυποκενηπικόρ ζσεδιαζμόρ γέθςπαρ πλοίος» Φοςζιάνηρ Αθανάζιορ Δπιβλέπυν Καθηγηηήρ: Νηθφιανο Π. Βεληίθνο Σπιμελήρ Δξεηαζηική
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας Στην άσκηση αυτή θα υλοποιήσετε μια κλάση Geometric η οποία διαχειρίζεται μια γεωμετρική ακολουθία ακεραίων
Διαβάστε περισσότεραEcon 2110: Fall 2008 Suggested Solutions to Problem Set 8 questions or comments to Dan Fetter 1
Eon : Fall 8 Suggested Solutions to Problem Set 8 Email questions or omments to Dan Fetter Problem. Let X be a salar with density f(x, θ) (θx + θ) [ x ] with θ. (a) Find the most powerful level α test
Διαβάστε περισσότεραEPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 5: Component Adaptation Environment (COPE)
EPL 603 TOPICS IN SOFTWARE ENGINEERING Lab 5: Component Adaptation Environment (COPE) Performing Static Analysis 1 Class Name: The fully qualified name of the specific class Type: The type of the class
Διαβάστε περισσότεραΔηµοσθένης Σταµάτης Τµήµα Πληροφορικής T.E.I. ΘΕΣΣΑΛΟΝΙΚΗΣ
Δοµές Δεδοµένων 3ο Εξάµηνο Υλοποίηση Στοίβας και Ουράς µε Συνδεδεµένες Λίστες Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής T.E.I. ΘΕΣΣΑΛΟΝΙΚΗΣ public class LinkedStack //implements Stack // Υλοποίηση στοίβας
Διαβάστε περισσότεραΤύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )
Τύποι Δεδομένων και Απλές Δομές Δεδομένων Παύλος Εφραιμίδης V1.0 (2014-01-13) Απλές Δομές Δεδομένων Στην ενότητα αυτή θα γνωρίσουμε ορισμένες απλές Δομές Δεδομένων και θα τις χρησιμοποιήσουμε για την αποδοτική
Διαβάστε περισσότερα(Διαφάνειες Νίκου Βιδάκη)
(Διαφάνειες Νίκου Βιδάκη) JAVA Inheritance Εβδομάδα Νο. 3 2 Προηγούμενο μάθημα (1/2) Τι είναι αντικείμενο? Ανάλυση αντικειμένων Πραγματικά αντικείμενα Καταστάσεις Συμπεριφορές Αντικείμενα στον προγραμματισμό
Διαβάστε περισσότεραderivation of the Laplacian from rectangular to spherical coordinates
derivation of the Laplacian from rectangular to spherical coordinates swapnizzle 03-03- :5:43 We begin by recognizing the familiar conversion from rectangular to spherical coordinates (note that φ is used
Διαβάστε περισσότεραΔιάλεξη 16: Σωροί. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις
ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 16: Σωροί Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις Ουρά Προτεραιότητας (Priority
Διαβάστε περισσότεραPARTIAL NOTES for 6.1 Trigonometric Identities
PARTIAL NOTES for 6.1 Trigonometric Identities tanθ = sinθ cosθ cotθ = cosθ sinθ BASIC IDENTITIES cscθ = 1 sinθ secθ = 1 cosθ cotθ = 1 tanθ PYTHAGOREAN IDENTITIES sin θ + cos θ =1 tan θ +1= sec θ 1 + cot
Διαβάστε περισσότεραΚλάσεις στη Java. Παύλος Εφραιμίδης. Java Κλάσεις στη Java 1
Κλάσεις στη Java Παύλος Εφραιμίδης Java Κλάσεις στη Java 1 Κλάσεις στην Java Θα δούμε τη διαδικασία δημιουργίας μιας κλάσης Θα υλοποιήσουμε μια κλάση για τη Δομή Δεδομένων Stack Java Κλάσεις στη Java 2
Διαβάστε περισσότεραΚλάσεις στη Java. Στοίβα - Stack. Δήλωση της κλάσης. ΗκλάσηVector της Java. Ηκλάση Stack
Κλάσεις στην Java Κλάσεις στη Java Παύλος Εφραιμίδης Θα δούμε τη διαδικασία δημιουργίας μιας κλάσης Θα υλοποιήσουμε μια κλάση για τη Δομή Δεδομένων Stack Java Κλάσεις στη Java 1 Java Κλάσεις στη Java 2
Διαβάστε περισσότεραΠανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική»
Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Επίκαιρα Θέματα Ηλεκτρονικής Διακυβέρνησης Ονοματεπώνυμο Φοιτητή Σταμάτιος
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ
Διάλεξη 10: Λίστες Υλοποίηση & Εφαρμογές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ευθύγραμμες Απλά Συνδεδεμένες Λίστες (εύρεση, εισαγωγή, διαγραφή) Σύγκριση Συνδεδεμένων Λιστών με Πίνακες
Διαβάστε περισσότεραΕΞΑΙΡΕΣΕΙΣ. Εξαιρέσεις προκαλούνται. από το σύστηµα. από το πρόγραµµα
ΕΞΑΙΡΕΣΕΙΣ Εξαίρεση (Exception): Ένα συµβάν κατά τον χρόνο εκτέλεσης (π.χ. αδυναµία ανοίγµατος αρχείου ή ανάγνωσης πληροφορίας, µη ύπαρξη αντικειµένου στη στοίβα) που απαιτεί ειδικό χειρισµό. Ονοµάζεται
Διαβάστε περισσότεραEvery set of first-order formulas is equivalent to an independent set
Every set of first-order formulas is equivalent to an independent set May 6, 2008 Abstract A set of first-order formulas, whatever the cardinality of the set of symbols, is equivalent to an independent
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input
Διαβάστε περισσότεραΤ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων
Εργαστήριο Java Lab09 Αντικείμενο: Πολυνηματικές εφαρμογές Η χρήση περισσότερων από μιας ροής εντολών μέσα σε ένα πρόγραμμα είναι γνωστή ως multithreading. H κάθε μια ροή εντολών μέσα στο πρόγραμμα ονομάζεται
Διαβάστε περισσότεραΣτοίβες - Ουρές. Στοίβα (stack) Γιάννης Θεοδωρίδης, Νίκος Πελέκης, Άγγελος Πικράκης Τµήµα Πληροφορικής
Στοίβες - Ουρές Γιάννης Θεοδωρίδης, Νίκος Πελέκης, Άγγελος Πικράκης Τµήµα Πληροφορικής οµές εδοµένων 1 Στοίβα (stack) οµή τύπουlifo: Last In - First Out (τελευταία εισαγωγή πρώτη εξαγωγή) Περιορισµένος
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) Βρείτε τα λάθη Στο πρόγραμμα στην επόμενη διαφάνεια υπάρχουν διάφορα λάθη Ποια είναι? public abstract
Διαβάστε περισσότεραMath 6 SL Probability Distributions Practice Test Mark Scheme
Math 6 SL Probability Distributions Practice Test Mark Scheme. (a) Note: Award A for vertical line to right of mean, A for shading to right of their vertical line. AA N (b) evidence of recognizing symmetry
Διαβάστε περισσότεραHomework 3 Solutions
Homework 3 Solutions Igor Yanovsky (Math 151A TA) Problem 1: Compute the absolute error and relative error in approximations of p by p. (Use calculator!) a) p π, p 22/7; b) p π, p 3.141. Solution: For
Διαβάστε περισσότεραNumerical Analysis FMN011
Numerical Analysis FMN011 Carmen Arévalo Lund University carmen@maths.lth.se Lecture 12 Periodic data A function g has period P if g(x + P ) = g(x) Model: Trigonometric polynomial of order M T M (x) =
Διαβάστε περισσότεραHomework 8 Model Solution Section
MATH 004 Homework Solution Homework 8 Model Solution Section 14.5 14.6. 14.5. Use the Chain Rule to find dz where z cosx + 4y), x 5t 4, y 1 t. dz dx + dy y sinx + 4y)0t + 4) sinx + 4y) 1t ) 0t + 4t ) sinx
Διαβάστε περισσότεραSection 9.2 Polar Equations and Graphs
180 Section 9. Polar Equations and Graphs In this section, we will be graphing polar equations on a polar grid. In the first few examples, we will write the polar equation in rectangular form to help identify
Διαβάστε περισσότεραΔιάλεξη Εισαγωγή στη Java, Μέρος Γ
Τμήμα Πληροφορικής και Τηλεπικοινωνιών Ανάπτυξη Λογισμικού για Δίκτυα και Τηλεπικοινωνίες Χειμερινό Εξάμηνο 2017-2018 Διάλεξη Εισαγωγή στη Java, Μέρος Γ Νήματα (Threads) στην Java Συγχρονισμός Producer-Consumer
Διαβάστε περισσότεραCambridge International Examinations Cambridge International General Certificate of Secondary Education
Cambridge International Examinations Cambridge International General Certificate of Secondary Education *3148288373* GREEK 0543/04 Paper 4 Writing May/June 2016 1 hour Candidates answer on the Question
Διαβάστε περισσότεραAbstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA
Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA Τι θα συζητήσουμε σήμερα Αφαιρέσεις στη Java Abstract μέθοδοι και abstract κλάσεις Interfaces (=διασυνδέσεις, διεπαφές) Instanceof Παραδείγματα κώδικα Αφηρημένες
Διαβάστε περισσότεραModbus basic setup notes for IO-Link AL1xxx Master Block
n Modbus has four tables/registers where data is stored along with their associated addresses. We will be using the holding registers from address 40001 to 49999 that are R/W 16 bit/word. Two tables that
Διαβάστε περισσότερα