线性表的学习总结一

本文详细总结了线性表的相关知识,包括单链表的建立、长度计算、数据打印、查找操作、插入和删除节点,以及链表的倒置和去重。此外,还探讨了冒泡排序在链表中的应用。
摘要由CSDN通过智能技术生成
作为一名通工转cs的coder,这学期中终于开始学习数据结构,在此做一些学习总结,以下是实现的一些功能:
  • 建立链表
  • 求链表长度
  • 打印数据
  • 按序号查找
  • 按值查找
  • 单链表的插入,按序号插入
  • 删除链表第i个元素
  • 倒置链表
  • 单链表中删除重复节点,排序思想,双重循环进行比较
  • 冒泡排序

    定义结构体
    struct node
    {
    int num;
    struct node *next;
    };
    typedef struct node *LinkList,Node;

建立链表

LinkList create_LinkList();
LinkList create_LinkList()
{
    LinkList h=(LinkList)malloc(sizeof(Node));
    h->next=NULL;
    Node *s,*r=h;
    int x;
    scanf("%d",&x);
    while(x!=-1)
    {
        s=(LinkList)malloc(sizeof(Node));
        s->num=x;
        r->next=s;
        r=s;
        //s->next=r->next;
        //r->next=s;
        //r=s;
        scanf("%d",&x);
    }
    r->next=NULL;
    return h;
}

求链表长度

int getLength_LinkList(LinkList h);
int getLength_LinkList(LinkList h)
{
    Node *p=h;
    int Length=0;
    while(p->next!=NULL)
    {
        p=p->
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值