صف ساختمان داده ای است که کلیه عملیات اضافه از یک سر آن و کلیه عملیات حذف از انتهای دیگر آن انجام می پذیرد. صف در نرم افزارهایی صف انتظار را برای دسترسی به منبعی برقرار می کنند کاربرد دارد.
صف لیست مرتبی است که عناصر در انتهای آن (Rear) اضافه و از ابتدای آن(Front) حذف می شوند. به عبارت دیگر طول صف از انتهای آن افزایش و از ابتدای آن کاهش می یابد.
اولین عنصری که وارد صف می شود اولین عنصری است که از صف خارج می شود. بنابراین عناصر به همان ترتیبی که به صف اضافه می شوند از آن حذف می شوند. به همین دلیل به صف لیست (first in, first out) FIFO نیز گفته میشود.
پیادهسازی صف با آرایه
صف را می توان توسط یک آرایه یک بعدی پیاده سازی کرد.
در این پروژه که به زبان سی شارپ می باشد صف را به وسیله آرایه پیاده سازی کرده ایم که برای ارائه در درس ساختمان داده بسیار مناسب می باشد.