Мне нужна помощь. Я хочу добавить два списка вместе (сумма из двух списков).Добавление двух списков в C
Идея состоит в том, чтобы взять два списка элементов, и мне нужно иметь сумму этих двух списков. ответ должен быть целым числом (int).
Вот мои коды:
typedef struct element element;
struct element {
int val;
struct element *nxt;
};
enum { STOCK_MEM = 1024};
struct element memoire[STOCK_MEM];
typedef element* llist;
void init_memoire() {
int i;
for(i = 0; i < STOCK_MEM; i++)
memoire[i].val = -2;
}
llist consDebut(llist liste, int valeur) {
element* newEl = malloc(sizeof(element));
newEl->val = valeur;
newEl->nxt = liste;
return newEl;
}
//Ajouter un élément en fin de la liste
llist consFin(llist liste, int valeur) {
element* newEl = malloc(sizeof(element));
newEl->val = valeur;
newEl->nxt = NULL;
if(liste == NULL) {
return newEl;
} else {
element* temp = liste;
while(temp->nxt != NULL) {
temp = temp->nxt;
}
temp->nxt = newEl;
return liste;
}
}
int estVide(llist liste) {
if(liste == NULL) {
return 1;
} else {
return 0;
}
}
int main() {
init_memoire();
llist newlist = NULL;
int i;
for(i = 1; i <= 3; i++) {
newlist = consDebut(newlist, i);
newlist = consFin(newlist, i);
}
llist list2 = NULL;
int c;
for(c = 1; c <= 5; c++) {
list2 = consDebut(list2, c);
}
return 0;
}
Может кто-нибудь помочь, пожалуйста
Итак, когда ваш крайний срок? – gustafbstrom
Менее 1 часа – rudstep
Мой лучший совет: выберите любимый тип календаря - документ, Календарь Google или аналогичный - и начните добавлять к нему крайние сроки назначения. Это займет минуту больше вашей жизни за задание на расписание, но вы никогда не пожалеете об этом, по крайней мере, я этого не сделал. Теперь и вторично (я не даю вам код, вы должны подумать о том, как реализовать это самостоятельно): перебирайте оба списка в одном цикле и добавляйте элементы вместе в отдельной переменной. Это ответ на вашу проблему - счастливый взлом! – gustafbstrom