מבנה נתונים מדעי המחשב Queue תור שפת java (דומה מא...
מבנה נתונים מדעי המחשב Queue תור שפת java (דומה מאוד לשפת c#)
תור הוא מבנה נתונים המאפשר שמירת נתונים בצורה של: הראשון שנכנס הוא הראשון שיוצא. FIFO.
נניח ואנחנו בתור בקופה, הראשון שהגיע לתור הוא הראשון שיקבל שירות. האחרון שהגיע לתור הוא האחרון שיקבל שירות.
head ← 1 , 3, 5 , 0 ← tail
במידה ומישהו חדש מצטרף לתור הוא ייכנס מהסוף (tail).
במידה וישלפו מישהו מהתור, הוא ייצא מראש התור (head).
איך יוצרים תור?
Queue<Integer> q = new Queue<Integer>(); // יצירת תור ריק
כיצד בודקים האם התור ריק?
if(q.isEmpty()) // בדיקה האם התור ריק
כיצד בודקים האם התור הוא לא ריק?
if(!q.isEmpty()) // בדיקה האם התור לא ריק
איך מוסיפים איבר לתור?
q.insert(4); //הכנסת איבר לתור
איך מסירים איבר מתור?
if(!q.isEmpty()) //בדיקה אם התור לא ריק, רק אז ניתן להסיר איבר
int x = q.remove();
//במידה והתור ריק וננסה להסיר איבר התכנית תקרוס
כיצד סורקים תור? (יש לקחת בחשבון שהוא יתרוקן)
while( !q.isEmpty())
כיצד מקבלים את ערכו של ראש התור ?
if( !q.isEmpty())
int x = q.head();
אפשר לסכם שיש לתור 4 פעולות:
q.insert(4) , q.remove() , q.isEmpty()