נניח לממש סוג של רשימה מקושרת שלכל איבר בה 4 שדות: הערך, מצביע לאיבר המקסימלי ברשימה אחריו (כולל אותו), מצביע לאיבר המינימלי ברשימה אחריו (כולל אותו),מצביע לאיבר הבא.
כמובן צריך לשמור את המצביע לראש הרשימה..
המימוש של הפעולות:
push - נניח שדוחפים מספר. אז ניצור ממנו node שהאיבר הבא אחריו יהיה ראש הרשימה הנוכחי, נעדכן את ראש הרשימה הנוכחי להיות הnode שיצרנו. שדה המקסימום שלנו יהיה מצביע לעצמינו אם האיבר הנוכחי גדול מהערך של האיבר שראש הרשימה הישן הצביע עליו בתור המקסימלי , או המקסימום של ראש הרשימה הישן אחרת. באופן דומה קובעים את הערך של האיבר המינימלי בnode
pop - מוחקים את הNODE ראש הרשימה (עדכוני מצביעים) getMax - השדה של המקסימום באיבר שהוא ראש הרשימה (בגלל הבנייה הוא גם יהיה המקסימום של הרשימה) getMin - השדה של המינימום באיבר שהוא ראש הרשימה.