User Tools

Site Tools


notes:data:spring2024:projects:waq0

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Last revisionBoth sides next revision
notes:data:spring2024:projects:waq0 [2024/04/16 13:42] – [Doubly Linked Queue] rspringenotes:data:spring2024:projects:waq0 [2024/04/16 13:53] – [Function to Create a Queue] rspringe
Line 15: Line 15:
     nextElement pointer to next Obj in queue     nextElement pointer to next Obj in queue
  
-struct Queue:+struct/class Queue:
     firstElement pointer to bottom of queue     firstElement pointer to bottom of queue
     lastElement pointer to top of queue     lastElement pointer to top of queue
  
 +Initialize prevObj
 +Initialize nextObj
  
 +add function (Obj* obj):
 +    Set prevObj and nextObj to obj's previous element and next element, respectively
 +    
 +    if queue is empty:
 +        Set queue's first element and last element to obj
 +        Set obj's prev element to NULL
 +        
 +    else:
 +        Set obj's previous element to queue's last element
 +        Set queue's last element's next element to obj
 +        Set queue's last element to obj
 +
 +    Set obj's next element to NULL
 +    
 +    Point prevObj and nextObj to each other
 +    
 +remove function:
 +    Grab queue's first element
 +    Set nextObj to this obj's next element (second in queue)
 +    
 +    Set queue's first element to nextObj
 +    Set nextObj's previous element to NULL
 +    Set obj's next element to NULL
 +    
 +    return obj
 +    
 +Main Code:
 +    Initialize Queue
 +    
 +    Initialize elements
 +    
 +    Use add and remove functions throughout code   
 +    
 </code> </code>
notes/data/spring2024/projects/waq0.txt · Last modified: 2024/04/16 14:00 by rspringe