Opened 3 years ago

Closed 3 years ago

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

WW_mergesort sysoev.sergej

Reported by: Sergey Sysoev Owned by: Дмитрий Лапшин (lapshin)
Component: WW_mergesort Version: 2.0
Keywords: Cc:

Description


Change History (3)

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

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

Неверное имя исполняемого файла.

Нарушаешь формат вывода: строчку переведи)

Стиль: вау. Но вопросы есть:

  1. Функция copy кажется не меняет один из аргументов, но не сообщает в заголовке.
  2. А подключить заголовочный файл в реализацию?
  3. Копировать в цикле по элементу кажется странным.
  4. left/left_end/right/right_end: почему 4 аргумента, на самом деле их же 3)

Очень-очень круто. Бонус в зачёт, но хочу полную корректность увидеть. 8/10, тут явно будет 11 после исправлений.

comment:2 Changed 3 years ago by Sergey Sysoev

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

Неверное имя исполняемого файла. fixed
Нарушаешь формат вывода: строчку переведи) fixed

По стилю:

  1. Исправил, так же заметил, что большая часть указателей в merge тоже может быть const.
  2. fixed
  3. Исправил, единственный вопрос: могу ли я вычитать void* из void* и не получить по голове, или стоит кастовать каждый раз к char*?
  4. Это исправил, хотя мне не нравится. Я задумывал merge как переиспользуемую функцию(аналог std::merge в c++ https://en.cppreference.com/w/cpp/algorithm/merge), единственное, по заданию в mergesort.h я её всё равно включить не могу... Теперь передаю только 3 аргумента, но внутри всё равно приходится создавать четвёртый, потому что средний указатель я начинаю двигать, а мне нужно знать, где конец для первого указателя.

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

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

Арифметика указателей на void* не специфицируется стандартом, GCC при специальных флагах считает её побайтовой, но нам нельзя этим пользоваться.

Я понял твою аргументацию, окей. На будущее можно просто ответить, почему ты уверен, что это лучше, и если убедишь то и хорошо.

11.

Note: See TracTickets for help on using tickets.