очередь в си



Автор Евгения Рожко задал вопрос в разделе Другие языки и технологии

Как реализовать очередь на си? и получил лучший ответ

Ответ от ?????? Зелёный змий ??????[гуру]
Архитектор умудрился в семи строчках сделать пять ошибок С++, кроме того, шаблоны появились в С++, а в простом Си шаблонами не пахнет.
Очередь - это примерно как односвязанный список. Нужна стуктура, одно поле которой является указателем на эту же сруктуру (следущий элемент очереди) , остальные поля - по желанию/необходимости.
Два указателя на эту структуру, Один смотрит на первый элемент очереди (голова) , второй смотрит на последний (хвост) .
Новый элемент очереди (структура) добавляется в хвост. Это тривиально. Если очередь пустая, то голову и хвост установить на новый элемент. Если не пустая, то новую структуру приклеить к последнему элементу, а хвост установить на новый элемент.
Забирать элементы очереди с головы. Если очередь не пустая, то Голову установить на следущий элемент после первого, если очередь стала пустой, то и хвост обнулить.

Ответ от Булат 1[гуру]
template<typename> class queue
{
private:
T * buffer;
int buflen;
T *front_ptr, *back_ptr;
}
Дальше уж мозги включай

Ответ от Darth Vader[гуру]
Ну как-как. Делаете структуру, одно из полей которой является ссылкой на эту саму структуру, а потом пишете к ней операции Добавить, Извлечь и ПроверитьНаПустоту

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Как реализовать очередь на си?

Что такое бореальные леса?
Несмотря на то, что термин "бореальный лес" довольно распространен, он, как ни странно, до сих пор
подробнее...

Морфемный разбор наречия очередями бессильно впустую
Первое слово – существительное, а не наречие. Разобрать указанные слова по составу
подробнее...
спросили в 1724 год
В чем измеряется температура воздуха?
Градус Цельсия. (обозначение: °C) — широко распространённая единица измерения температуры,
подробнее...
спросили в Другое 1440 е годы
почему в часе 60 мин. , а не 100 или 90
В Древней Индии число 60 счталось свишеным ооттуда и пошо что в сеунде 60 милисек в мнуте 60 сек в
подробнее...
спросили в 1724 год
А в каких странах температуру воздуха измеряют в градусах по Фаренгейту?
Градус Фаренгейта. — единица измерения температуры с линейной шкалой. Долгое время шкала Фаренгейта
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

В каком месяце лучше замуж выходить?
ЯНВАРЬ – рано овдоветь
ФЕВРАЛЬ – жить в согласии с мужем
МАРТ – жить на чужой сторонеподробнее...
спросили в Techland
Посоветуйте хороший отель в Тайланде Пхукете 3-4* с хорошим завтраком, с чистым пляжем не подалёку, и развлечениями
Botany Beach Resort расположен в Таиланде, в одной из самых чистых зон побережья Паттайи на пляже
подробнее...
спросили в Общество
Воспоминания и размышления маршала Г. К. Жукова 🙂
Как-то по телевидению был показан сюжет: корреспондент спрашивает у школьников, гуляющих рядом с
подробнее...

как заряжается плоский конденсатор?
Конденсатор - система проводников, электрическая ёмкость которой не зависит от окружающих тел. Он
подробнее...
спросили в 1724 год
почему за ноль у Цельсия взята температура плавления льда, а за 100 - температура кипения воды?
Градус Цельсия. (обозначение: °C) — широко распространённая единица измерения температуры,
подробнее...
спросили в Мечты Мечта
сочинение на тему город моей мечты))
Прозвенел звонок с последнего урока, и я неторопливо вышла из школы. В дневнике задание: написать
подробнее...
спросили в Вопросник
Определения по географии
1.Погода - совокупность значений метеорологических элементов и атмосферных явлений, наблюдаемых в
подробнее...
спросили в Delphi
что лучше C# или Delphi
> В Си всё строго и в процессе обучения шишки набиваются на каждом углу.

Вот как раз
подробнее...
спросили в SK Group
Как избавиться от психической болезни ОКР?
окр? На основе чего вы ее у себя диагностировали? Вы посещали психиатра и он вам такое сказал или
подробнее...

Что такое температура по кельвену и вообще что такое кельвин ?
Ке́львин (обозначение: K) — единица измерения температуры в СИ, предложена в 1848 году.подробнее...
Очередь программирование на Википедии
Посмотрите статью на википедии про Очередь программирование
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*