Opened 3 years ago

Closed 3 years ago

#127 closed ожидается проверка (задача сдана)

WW_intrusive_list kondratyuk.kirill

Reported by: kondratyuk.kirill Owned by: Дмитрий Лапшин (lapshin)
Component: WW_intrusive_list Version:
Keywords: Cc:

Description


Change History (5)

comment:1 Changed 3 years ago by Дмитрий Лапшин (lapshin)

Owner: changed from Дмитрий Лапшин (lapshin) to kondratyuk.kirill
Type: ожидается проверкаожидаются исправления

Компилятор на тебя ругается. И я не удивлён из-за этого предупреждениям валгринда везде.

При этом тесты прошло. Ноооо каааак оно вообще может работать?

struct point {
    int x, y;
    struct intrusive_node *node;
};

Ведь раз ты хранишь intrusive_node по указателю на кучу, как из него восстановить узел? Никак, ведь ты нарушая тип передаёшь в функцию не тот тип указателя. Но как хватает места хранить в указателе два указателя?!

Ответ: тебе везёт. Я переставил y после указателя и перестало работать на каком-либо нетривиальном тесте.

Надо чинить)

Дополнительно: если уж ты сделал голову списка с всегда существующим элементом (это нормальный трюк), зачем его на куче выделять лишний раз?

За стиль 3/12, надо чинить.

comment:2 Changed 3 years ago by kondratyuk.kirill

Owner: changed from kondratyuk.kirill to Дмитрий Лапшин (lapshin)
Type: ожидаются исправленияожидается проверка

Здравствуйте!

valgrind больше не ругается!)
Я убрал ссылку на ноду в структуре point. Теперь все работает отлично. Память в конце также теперь освобождается, но я не понял как не выделять первый элемент на куче? Или я что-то не так понял?(
Что бы еще такого крутого сделать здесь, чтобы получить 12 баллов здесь?)

С уважением, Кирилл.

comment:3 Changed 3 years ago by Дмитрий Лапшин (lapshin)

Owner: changed from Дмитрий Лапшин (lapshin) to kondratyuk.kirill
Type: ожидается проверкаожидаются исправления

Плохое предупреждение компилятора.

Про фиктивный элемент на куче всё ещё актуально. И как ты её руками хаком удаляешь в main тоже. 10/12.

comment:4 Changed 3 years ago by kondratyuk.kirill

Owner: changed from kondratyuk.kirill to Дмитрий Лапшин (lapshin)
Type: ожидаются исправленияожидается проверка

Здравствуйте!

Теперь компилятор больше не ругается, а фиктивный элемент я убрал:)

С уважением, Кирилл

comment:5 Changed 3 years ago by Дмитрий Лапшин (lapshin)

Resolution: задача сдана
Status: assignedclosed

А список теперь зачем на куче? И формат вывода слегка съехал. 11.

Note: See TracTickets for help on using tickets.