• 2024-06-0202-2.3.1 单链表的定义
    ⚠️这两天实在过于忙碌,以至于没有学习的时间,今天闲下来,立刻恢复更新,有等待我最新文章的小伙伴实在抱歉!⚠️另外,有喜欢我笔记的小伙伴可以订阅我的《数据结构》专栏,该专栏收录在我的大专栏《cs-self-learning》中,也可以订阅,日后会有更多有用的技能、笔记全部收录在大专栏里
  • 2024-05-28数据结构-单向链表的实现(c语言)
    链表的定义:链表是由一系列的结点组成的,每个结点包含两个域,分别是指针域(*next)与数据域(data)。单向链表的实现//.h文件#ifndeDXLB_H#defineDXLB_H//定义结点结构体typedefstructLINKNODE{structLINKNODE*next;//指向下一个结点的指针intdata;
  • 2024-05-06头插法新建链表
    新建链表指针结构体typedefintElemType;typedefstructLNode{ ElemTypedata; structLNode*next;//指向下一个结点}LNode,*LinkList;//结构体名LNode==*LinkList;LNode*==LinkList头插法新建链表先建立一个头结点:L=(LinkList)malloc(sizeof(LNode));//带
  • 2024-05-06尾插法新建链表
    核心代码:tail=head;s->next=NULL;tail->next=s;tail=s;插入过程演示:![[Pastedimage20230623143820.png]]头插法尾插法新建链表完整代码#include<iostream>#include<malloc.h>usingnamespacestd;typedefintElemtype;typedefstructLNode{ El
  • 2024-04-10C语言单链表代码实现
    声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。设计算法,实现线性结构上的单链表的产生以及元素的查找、插入与删除,求表长、有序表插入、元素逆置、2个有序表合并等。#include<stdio.h>#include<stdlib.h>//单链表的定义:typedefintDataType
  • 2024-04-06两种方法线性表合并有序线性表
    【问题描述】编写一个程序,将两个元素从小到大有序的一维数组归并成一个有序的一维数组。【输入形式】用户在第一行输入第一个有序数组的元素数目,以回车结束此输入。然后在第二行按照刚才输入的元素数目依次输入数组元素,中间用空格分隔,最后用回车结束输入。第三行和第四行只需
  • 2024-04-05链表
    链表链表结构定义//链表结构定义typedefstructLNode{intdata;structLNode*next;}LNode,*LinkList;初始化链表//初始化链表boolInitList(LinkList&L){L=newLNode;L->next=nullptr;returntrue;}创建链表(头插法)//创建链
  • 2024-04-03数据结构——从入门到入土
    链表的建立及遍历:分为如下几步:声明链表这种结构,比如:点击查看代码typedefstructnode*listlink;//定义一个指针类型名称,使指针变量能像其他变量那样声明,而不需要在每个指针变量前加*typedefstructnude(){intdata;structlistlinknext;}LNode;//声明
  • 2024-04-02SWUST OJ 952 单链表插入
    一、题目题目描述建立长度为n的单链表,在第i个结点之前插入数据元素data。输入第一行为自然数n,表示链式线性表的长度;第二行为n个自然数表示链式线性表各元素值;第三行为指定插入的位置i;第四行为待插入数据元素data。输出指定插入位置合法时候,输出插入元素后的链式线性
  • 2024-04-01数据结构 第二章(线性表)
    写在前面:本系列笔记主要以《数据结构(C语言版)》为参考,结合下方视频教程对数据结构的相关知识点进行梳理。所有代码块使用的都是C语言,如有错误欢迎指出。视频链接:第01周a--前言_哔哩哔哩_bilibili一、线性表的定义和特点        同一线性表中的元素必定具有相同的特性
  • 2024-04-01【数据结构】一元多项式的表示与相加(无序输入 有序输出)
    一元多项式的表示与运算——课程设计(无序输入有序输出)目录一元多项式的表示与运算——课程设计(无序输入有序输出)一.例题:(输入无序,指数升序排列的一元多项式)1.链表结点定义2.创建单链表存放一元多项式(将无序的输入有序存放于链表)3.输出一元多项式4.一元多项式求值
  • 2024-03-31数据结构 —— 线性表的链式存储(链表)(C++)
    目录单链表(有头结点)定义初始化判空销毁清空求表长取值查找插入删除创建头部创建尾部创建本文相关知识:以链式存储结构来实现线性表(C++)如有错误请指正~~谢谢~后面更新循环链表和双向链表单链表(有头结点)以带头结点的单链表为例,操作更加简便!定义首先,为了增强程序的可读性,做出以
  • 2024-03-24单链表删除相同的元素
    #include<iostream>#include<stdlib.h>usingnamespacestd;#defineerror-1#defineok1typedefintStatus;typedefintElemType;typedefstructLNode{ ElemTypedata; LNode*next;}LNode,*LinkList;StatusCreateList(LinkList&L,int
  • 2024-03-23线性表的单链表
    目录1>.单链表的定义和表示2>.单链表基本操作1.初始化2.取值3.查找4.插入5.删除1>.单链表的定义和表示1.基本概念特点:用一组任意的存储单元存储线性表的数据元素(存储单元可以连续,也可以不连续)。对数据元素ai,存储本身的信息和一个指示直接后继的存储位置,这两部分信
  • 2024-03-17构建链表
    链表 typedefstructmsgdata{charmsgtype;chartext[27];}link_data;typedefstructmsglist{link_datadata;structmsglist*next;}linknode,*linklist;   创建链表思路:首先创建两个结点,即头结点和尾结点;然后创建一个函数:在函数内创建一
  • 2024-03-16线性表章节课后习题答案集锦
    目录2.52.62.72.82.92.102.112.122.132.5/*要比较两个单词在字典中的顺序,可以逐个比较它们的字符。首先比较两个单词的第一个字符,如果相同,则继续比较下一个字符,直到找到不同的字符或者某个单词比较完毕。比较时,可以利用ASCII码进行比较,因为字母在ASCII码中是按顺
  • 2024-02-02链表中,LNode和* LinkList的理解
    typedefstructLNode{ intdata; structLNode*next;}LNode,*LinkList;这是标准链表创建法。简单的说,其中LNode和*LinkList分别是LNode的不同名字,显而易见一个是指针一个不是指针。两者等价关系如下:typedefstructLNodeLNode;//将结构体重命名为LNodetypedefs
  • 2024-01-23俊。。。你的作业
    #define_CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#defineMax16//郑州火车站,二七广场,人民路,紫荆山,燕庄//实现地铁站的插入、删除、修改、查询、排序以及票价查询工作//输入上车站与下车站,系统自动计算出票价(两站之内两元,三四站三元)//输出票价时同时
  • 2023-12-07数据结构:单链表——定义、插入、删除
    1、查找元素查找第i个元素LNode*GetEleme_i(LinkListL,inti){if(i<1){returnNULL;}LNode*p;p=L;intj=0;while(p!=NULL&&j<i){p=p->next;j++;}returnp;}查找e元素的结点LNode*GetEleme_e(LinkList&L,ElementTypee){LNode*p;p=L;while
  • 2023-11-11练习
    //统计出单链表L中结点的值等于给定值x的结点数;typedefstructLNode{ intdata; structLNode*next;}LNode,*linklist;intcount_x(linklist&L,intx){ if(!L)return0; LNode*vnode=newLNode; vnode->next=L; linklistp=vnode; intcount=0; while
  • 2023-11-03顺序表和链表
    writeup后面写258.链表去重给定一个键值为整数的单链表L,将键值的绝对值有重复的结点删除:即对任意键值K,只有键值或其绝对值等于K的第一个结点被保留在L中。例如,下面单链表L包含键值21、-15、15、7、-15,如下图(a)所示;去重后的链表L包含键值21、-15、7,如
  • 2023-10-13Josephus环(作业
    #include<stdio.h>#include<string.h>#include<stdlib.h>typedefstructnode{ intdata;//值 structnode*next;//嵌套定义结构体必须有名}linklist;intmain(){ //输入数字创建循环链表 linklist*head; linklist*s; linklist*r; intn=0; inti=1; he
  • 2023-10-13C++ 函数 const
    分为两种情况:在函数前加constconstintget_value(){}表示函数返回值为const。使用指针时有用。在函数后加constLinkList_length()const{}表示函数不修改class的成员。
  • 2023-10-0839-19
    设有有一个带头结点的循环单链表,反复找出单链表中最小的结点并删除,直至链表为空注意删除需要释放空间,包括释放最后的链表头结点#include<stdio.h>#include<stdlib.h>typedefstructnode{intdata;structnode*next;}LNode,*LinkList;voidCreateList(LinkL
  • 2023-10-0839-17
    设计一个算法用于判断带头结点的循环双链表是否对称循环双链表!!#include<stdio.h>#include<stdlib.h>typedefstructnode{intdata;structnode*pre,*next;}LNode,*LinkList;voidCreateList(LinkList&L){L=(LinkList)malloc(sizeof(LNode));L-