单链表宇宙最全基础操作

本文介绍了单链表的基础操作,包括创建、头插法、尾插法、遍历、指定位置插入和删除。通过C语言实现,讲解了如何使用指针管理链表节点,强调了链式存储的灵活性和特点。
摘要由CSDN通过智能技术生成

   单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) +[ 指针](https://baike.baidu.com/item/ 指针/2878304)(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。接下来我们来学习如何用C语言写单链表。

一、单链表与单链表结点的创建函数

  我们需要在C语言最基础的主函数中进行

#include <stdio.h>
#include <stdlib.h>
int mian()
{
    return 0;
}

这是说一下为什么用到#include <stdlib.h> ,因为我们在创建单链表时需要用到动态内存申请malloc


  结点属性设置:最基础的结点包含一个数据域和指针域,这里我们利用结构体创建一个包含一个整型数据的数据域和一个指针域,用于指向下一个结点

struct Node
{
    int data;
    struct Node* next;
};

  单链表的创建:这里我们创建的是有头链表,所以创建单链表就是创建一个头结点并进行初始化,然后返回这一个结点,而这个就是一个只有头结点的单链表了(这里我们单独写个函数进行有头链表的创建)

struct Node* createList()
{
    struct Node* list = (struct Node*)malloc(sizeof(struct Node));  //进行动态内存申请创建这个链表
    if(list == NULL)
        return NULL;    //判空处理,如果没申请到内存,直接return
    list->next = NULL;   //初始化链表
    return list;
}

  单链表的结点创建:这里与单链表创建差不多,只是多了个数据域的初始化

struct Node* createNode(int data)   //传入一个数据给我们创建的结点初始化
{
    struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
 
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值