输出该单链表的中间结点的值,如果链表长度为偶数,则输出中间靠右的结点

输出该单链表的中间结点的值,如果链表长度为偶数,则输出中间靠右的结点

题目要求:
输入数据创建一个单链表,实现一种算法。输出该单链表的中间结点的值,如果链表长度为偶数,则输出「中间靠右」的结点。如果链表只有一个元素,则输出唯一的元素。

算法思路:

  1. 创建一个单链表
  2. 设置两个指针,一个快指针fast,一个慢指针slow;
  3. 当快指针所指向的数据以及它所指向的下一个数据为空时,慢指针指向中间元素。
#include <iostream>
#define LIST_INIT_SIZE 100
#define Elemtype int
#define NULL 0

typedef struct LNode
{
   
   
    Elemtype data;
    struct LNode* next;
}LNode, * LinkList;

//创建一个单链表
LNode* CreatLinklist(void) {
   
   
    LinkList head = (LNode*)malloc(sizeof(LNode));//定义头结点
    head->data = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值