#include<iostream>
#include<malloc.h>
using namespace std;
// linked list struct
typedef struct Node {
char buffer; // enter a char
int integer; // store integer
int number = 0; // record number
struct Node* next; // pointer to next
Node(int elem) :integer(elem), next(NULL) {}
}*List;
// initialize the linked list
void init_list(List& L) {
// reverse insert
List p = new Node(0);
L = new Node(0);
// exclude starting with zero
while (cin >> p->buffer) {
if (p->buffer != '0') {
break;
}
}
while (p->buffer >= '0' && p->buffer <= '9') {
p->integer = p->buffer - '0';
p->next = L->next;
L->next = p;
L->number++;
p = new Node(0);
cin >> p->buffer;
}
}
// insert a single node
void insert_node(List& L, int elem) {
List p = new Node(0);
p->integer = elem;
p->next = L->next;
L->next = p;
}
// reverse linked list
void reverse_l
链表实现的大整数乘法
最新推荐文章于 2022-07-23 13:38:39 发布