170 похожих чатов

Есть задание: реализовать циклический буфер FIFO. ниже я привел свой

вариант исполнения. подскажите, все ли я правильно написал?
class Node():
def __init(self, data, next_node):
self.data = data
self.next = next_node

class CircularBuffer():
def init__(self):
self.first = None
self.tail = None

def add(self, data):
node = Node(data, self.first)
if self.first is None:
self.first = node
self.tail = node
node.next_node = node
else:
self.tail.next = node
self.tail = node

def get(self):
data = self.first.data
self.tail.next = self.first
self.tail = self.first
self.first = self.first.next
return data

13 ответов

17 просмотров

Может queue?

Алиби-Навечер Автор вопроса
Master Craftsman
Может queue?

нет, именно циклический буфер FIFO. так в задании написано

Алиби-Навечер Автор вопроса
Master Craftsman
Ну не знаю. Может тогда лучше queue?

что значит лучше queue? вы имеете в виду лучше написать очередь вместо циклического буфера?

Алиби Навечер
что значит лучше queue? вы имеете в виду лучше нап...

Технически между буфером и очередью различие только в абстракции (читать как в тараканах в голове). Круговой буфер, также известный как круговая очередь или циркулярный буфер, представляет собой высокопроизводительную очередь FIFO https://upread.ru/blog/articles-it/universalnyj-kolcevoj-bufer

Алиби-Навечер Автор вопроса
Master Craftsman
Технически между буфером и очередью различие тольк...

мне лишь нужно знать, правильно ли я понял\реализовал концепцию циклического буфера

Алиби Навечер
мне лишь нужно знать, правильно ли я понял\реализо...

Не особо вникал в твой код, но поверхностно глянув - нет

Алиби Навечер
тогда что не так

Вообще весь твой подход к решению. Что за first.next? Что это может значить в твоём понимании?

Алиби Навечер
тогда что не так

Если код не ясен - код говно

Алиби-Навечер Автор вопроса
Master Craftsman
Вообще весь твой подход к решению. Что за first.ne...

first это голова, а first.next это следующий элемент после головы

Алиби Навечер
first это голова, а first.next это следующий элеме...

Голова чего? Члена? Есть плоская память, цепочка последовательных ячеек или элементов, называемая массивом и указатель.

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
50
я не понимаю mov [r11+8],rcx и прочие. мы записываем значение из rcx, куда?
Bor
15
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
у меня такой вопрос про память в x86 возник, может кто пояснить?.. у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше)...
Toideng
5
Всем ку. Подскажите, если задекларировал массив так: int arr[10] = {1, 2, 3, 4}, то в arr[4] будет мусор или нуль?
Sasha K
10
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
А какие расширения активно используются в промышленности? Именно идейные, по типу гадт, а не всякие оверлоадедстрингс
Степан
11
у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше): - "п1" --- виртуальный адрес, то есть тот, который ресолвится в "п...
Toideng
3
Guys Who’s kurdish on this group?
Hiwa Amiri
11
Hello, I need a hand, this is my code: body: ExtendedImageGesturePageView.builder( scrollDirection: Axis.vertical, controller: _pageController, itemCou...
𝘞𝘦𝘢𝘳𝘪𝘯𝘨𝘔𝘦𝘥𝘢𝘭 🦋
2
Карта сайта