Change History (5)

comment:1 Changed 5 years ago by Дмитрий Свиридкин

Owner: changed from Дмитрий Свиридкин to savrasov.mikhail
Type: ожидается проверкаожидаются исправления

Ок, оно собирается. Ждем, когда начнет работать.

Не забудьте выкинуть мусор из заголовочного файла.

comment:2 Changed 5 years ago by savrasov.mikhail

Owner: changed from savrasov.mikhail to Дмитрий Свиридкин
Type: ожидаются исправленияожидается проверка
Version: 1.02.0

comment:3 Changed 5 years ago by Дмитрий Свиридкин

Owner: changed from Дмитрий Свиридкин to savrasov.mikhail
Type: ожидается проверкаожидаются исправления

Тесты как бы пройдены (если исправить одно досадное недоразумение)

lab_04/lab_04 char a b c 
=================================================================
==26686==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x602000000011 at pc 0x55e70e2dd47d bp 0x7ffd0f1092e0 sp 0x7ffd0f1092d0
READ of size 4 at 0x602000000011 thread T0
    #0 0x55e70e2dd47c in int_gt_comparator src/main.c:8
    #1 0x55e70e2dd362 in mergesort src/mergesort.c:27
    #2 0x55e70e2dd2ca in mergesort src/mergesort.c:15
    #3 0x55e70e2dd8f4 in main src/main.c:49
  1. Лучше разбить main на три функции
  1. Процедуру слияния стоит вынести в отдельную функцию
  1. header_guards

6 + 1

comment:4 Changed 5 years ago by savrasov.mikhail

Owner: changed from savrasov.mikhail to Дмитрий Свиридкин
Type: ожидаются исправленияожидается проверка
Version: 2.03.0

comment:5 Changed 5 years ago by Дмитрий Свиридкин

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

Ок.

Реализация слияния довольно путанная, лучше делать явно в два этапа: сначала сливаем, пока один из подмассивов не закончился, потом просто копируем в конец оставшихся. Так код будет проще и понятнее.

Так, memory allocation failed может случиться не только в mergesort :)

9 + 0.6

Note: See TracTickets for help on using tickets.