当前位置: 首页> 汽车> 车展 > 广告公司好做吗_网站应该如何进行优化_网络推广平台几大类_网站优化培训班

广告公司好做吗_网站应该如何进行优化_网络推广平台几大类_网站优化培训班

时间:2025/7/9 4:10:27来源:https://blog.csdn.net/jacky128256/article/details/144127773 浏览次数: 0次
广告公司好做吗_网站应该如何进行优化_网络推广平台几大类_网站优化培训班
#include <stdint.h>
#include <stdbool.h>
#include <stdio.h>#define NODE_COUNT 10  // 定义节点的总数量// 链表节点结构
typedef struct Node {int data;          // 节点的数据struct Node* next; // 指向下一个节点的指针
} Node;// 全局节点数组和链表头指针
Node nodeArray[NODE_COUNT];
Node* freeListHead = NULL;  // 空闲链表头
Node* dataListHead = NULL;  // 数据链表头// 初始化链表
void init() {// 初始化空闲链表for (int i = 0; i < NODE_COUNT; ++i) {nodeArray[i].next = (i < NODE_COUNT - 1) ? &nodeArray[i + 1] : NULL;}freeListHead = &nodeArray[0];dataListHead = NULL;
}// 从空闲链表中获取一个节点
Node* getFreeNode() {if (freeListHead == NULL) {return NULL; // 空闲链表为空}Node* node = freeListHead;freeListHead = freeListHead->next;return node;
}// 释放一个节点到空闲链表
void releaseNode(Node* node) {node->next = freeListHead;freeListHead = node;
}// 向数据链表中插入一个新节点
void insertNode(int data) {Node* newNode = getFreeNode();if (newNode == NULL) {// 没有可用的节点printf("No available nodes to insert.\n");return;}newNode->data = data;newNode->next = dataListHead;dataListHead = newNode;
}// 从数据链表中删除一个节点
void deleteNode(int data) {Node** ptr = &dataListHead;while (*ptr != NULL) {if ((*ptr)->data == data) {Node* nodeToDelete = *ptr;*ptr = nodeToDelete->next; // 更新前驱节点的指针releaseNode(nodeToDelete);  // 将节点插入到空闲链表中return;}ptr = &(*ptr)->next; // 移动到下一个节点}printf("Node with data %d not found.\n", data);
}// 检查数据链表是否为空
bool isDataListEmpty() {return dataListHead == NULL;
}// 打印数据链表
void printDataList() {Node* current = dataListHead;while (current != NULL) {printf("%d -> ", current->data);current = current->next;}printf("NULL\n");
}int main() {init();// 插入节点insertNode(10);insertNode(20);insertNode(30);// 打印数据链表printf("Data List: ");printDataList();// 删除节点deleteNode(20);// 打印数据链表printf("Data List after deleting node with data 20: ");printDataList();// 再次插入节点insertNode(40);// 打印数据链表printf("Data List after inserting node with data 40: ");printDataList();return 0;
}

测试:

root@iZwz99zhkxxl5h6ecbm2xwZ:~/serial-ipc# gcc list.c 
root@iZwz99zhkxxl5h6ecbm2xwZ:~/serial-ipc# ./a.out 
Data List: 30 -> 20 -> 10 -> NULL
Data List after deleting node with data 20: 30 -> 10 -> NULL
Data List after inserting node with data 40: 40 -> 30 -> 10 -> NULL
root@iZwz99zhkxxl5h6ecbm2xwZ:~/serial-ipc#
关键字:广告公司好做吗_网站应该如何进行优化_网络推广平台几大类_网站优化培训班

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: