C语言将一个数组12 3赋值给一个单链表
单链表的节点结构体定义如下:
typedef struct ListNode {
int val;
struct ListNode *next;
} ListNode;
可以通过循环遍历数组,依次创建链表节点,并将其插入链表中,代码如下:
ListNode* createLinkedList(int arr[], int size) {
ListNode *head = NULL;
ListNode *tail = NULL;
for (int i = 0; i < size; i++) {
ListNode *node = (ListNode*)malloc(sizeof(ListNode));
node->val = arr[i];
node->next = NULL;
if (head == NULL) {
head = node;
tail = node;
} else {
tail->next = node;
tail = node;
}
}
return head;
}
可以通过以下代码将数组{1,2,3}赋值给单链表:
int arr[] = {1, 2, 3};
int size = sizeof(arr) / sizeof(int);
ListNode *head = createLinkedList(arr, size);
``
原文地址: https://www.cveoy.top/t/topic/cvfA 著作权归作者所有。请勿转载和采集!