利用论坛推广网站记账公司如何拉客户
利用论坛推广网站,记账公司如何拉客户,p2p贷款网站开发,建站赚钱灰色// 在链表中插入新节点 // 这段代码定义了一个名为 insert 的函数#xff0c;用于在链表中插入新节点。让我解释一下这段代码的逻辑#xff1a; // 函数接受两个参数#xff1a;指向链表头节点的引用 head 和要插入的新节点的值 value。 // 首先#xff0c;它创建了一个新的…// 在链表中插入新节点 // 这段代码定义了一个名为 insert 的函数用于在链表中插入新节点。让我解释一下这段代码的逻辑 // 函数接受两个参数指向链表头节点的引用 head 和要插入的新节点的值 value。 // 首先它创建了一个新的节点 newNode并将新节点的数据域初始化为 value。 // 接着它检查链表是否为空。如果链表为空即 head 为 nullptr则将新节点设为链表的头节点。// 如果链表不为空则遍历链表直到找到最后一个节点即指针域为 nullptr 的节点。当 current-next 为 nullptr 时表示 current 已经指向了链表的最后一个节点循环结束。// 将新节点链接到链表的末尾即将当前最后一个节点的指针域指向新节点。
#include iostream// 定义链表节点结构体
struct Node {int data; // 数据域Node* next; // 指针域指向下一个节点
};// 在链表中插入新节点
// 这段代码定义了一个名为 insert 的函数用于在链表中插入新节点。让我解释一下这段代码的逻辑
// 函数接受两个参数指向链表头节点的引用 head 和要插入的新节点的值 value。
// 首先它创建了一个新的节点 newNode并将新节点的数据域初始化为 value。
// 接着它检查链表是否为空。如果链表为空即 head 为 nullptr则将新节点设为链表的头节点。
// 如果链表不为空则遍历链表直到找到最后一个节点即指针域为 nullptr 的节点。
// 将新节点链接到链表的末尾即将当前最后一个节点的指针域指向新节点。
// 这样新节点就成功地插入到了链表的末尾。这个函数的时间复杂度是 O(n)其中 n 是链表中节点的数量因为它需要遍历整个链表来找到最后一个节点。
void insert(Node* head, int value) {Node* newNode new Node;newNode-data value; // 手动设置数据域的值newNode-next nullptr; // 手动设置指针域的值if (head nullptr) {head newNode;} else {Node* current head;//这行代码的含义是将 head 的地址赋值给指针 current。这样current 就指向了链表的第一个节点然后通过循环将 current 移动到链表的末尾。while (current-next ! nullptr) {// 如果链表不为空则遍历链表直到找到最后一个节点即指针域为 nullptr 的节点。current current-next;//当 current-next 为 nullptr 时表示 current 已经指向了链表的最后一个节点循环结束。}current-next newNode;// 将新节点链接到链表的末尾即将当前最后一个节点的指针域指向新节点。}
}// 打印链表
void printList(Node* head) {Node* current head;while (current ! nullptr) {std::cout current-data - ;current current-next;}std::cout nullptr std::endl;
}// 主函数
int main() {Node* head nullptr;insert(head, 1);insert(head, 2);insert(head, 3);printList(head);return 0;
1 - 2 - 3 - nullptr 请按任意键继续. . .
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/88291.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!