Opened 3 years ago
Closed 3 years ago
#124 closed ожидается проверка (задача сдана)
WW4_Kravchenko
Reported by: | kravchenko.egor | Owned by: | Святослав Власов |
---|---|---|---|
Component: | WW_intrusive_list | Version: | 3.0 |
Keywords: | Cc: |
Description
С прочтением только куска строки только с костылём удалось справиться.
Также удаление работает за квадрат, хотя могло бы за линию, если можно пользоваться тем, что в списке точки лежат (или какая-нибудь известная структура).
Отступы были проверены clang-format. На простых тестах valgrind утечек памяти не нашёл.
Change History (6)
comment:1 Changed 3 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
comment:2 Changed 3 years ago by
Version: | 1.0 → 2.0 |
---|
1.Чтобы не писать лишних ифов на то, существует ли вершина слева от удаляемой/добавляемой. Можно ещё вторую пустую добавить с другого конца. Тогда количество ифов ещё уменьшится, но лень код переписывать.
2-7. Исправлено.
- Считывать по символу и проверять на то, что он '\n', не очень красиво и работать плохо может. Переводы строки же разные бывают. Моя программа будет работать только если это будет LF('\n'), а вот если CR ('\r') или CR+LF ("\r\n") -- то надо ещё ифов поставить, буфер для последнего символа завести. Может быть можно это как-то просто парой строчек написать?
comment:3 Changed 3 years ago by
Type: | ожидаются исправления → ожидается проверка |
---|
comment:4 Changed 3 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
Корректность 8/8
Стиль -- 2.5/4
- Выделение лишней памяти и её освобождение в функции init_list совершенно бессмысленно.
- Можно написать парой строчек, например используя fgets. fgets принимает на вход буфер и его размер, читает символы из строки до тех пор, пока не встретит перевод строки, либо пока буфер не закончится. Символ перевода строки также читается в буфер. Найти символ в строке можно с помощью функции strchr.
comment:5 Changed 3 years ago by
Type: | ожидаются исправления → ожидается проверка |
---|---|
Version: | 2.0 → 3.0 |
- Исправлено.
- Написал.
Note: See
TracTickets for help on using
tickets.
Корректность -- 0/7. Валгринд детектит лики.
Стиль -- 0/3.
Интрузивная нода потому и называется интрузивной, что она лежит внутри структуры point в качестве поля, под неё не нужно отдельно выделять память.