Стек - это механизм повсеместно используемый в программирование в силу своей простоты и удобства. Смысл его сводится к тому, что вы можете класть туда(в стек) данные только "наверх" и соответственно брать только "сверху". Например, если вы запишите в стек числа: 3, 7, 1, то получить назад их можно только в обратной последовательности, т.е. 1, 7, 3.
А очередь, как я понимаю, должна позволять получать данные в том порядке, как они в нее поступают, например - записываем в очередь 3, 7, 1 и на выходе получаем 3, 7, 1.