首页 > 其他分享 >查找链表中倒数第k个值

查找链表中倒数第k个值

时间:2024-04-22 21:34:34浏览次数:27  
标签:个值 Head next 链表 LList data 倒数第

查找链表中倒数第k个值

/********************************************************************
 *
 *	name	 :	deletelinkedlist
 *	function :  假设该链表只给出了头指针 head。在不改变链表的前提下,请设计一个尽可能高效的算法,
 *              查找链表中倒数第k(k为正整数个位置上的结点。若查找成功,算法输出该结点的data值,
 *              并返回1,否则,只返回0
 *	argument :
 *				@Head  :链表结构体头头节点地址
 *
 *	retval	 :  返回1成功0失败
 *	author	 :  [email protected]
 *	date	 :  2024-4-22
 * 	note	 :
 *
 * *****************************************************************/
bool LList_FindDataPut(LList_t *Head, unsigned int k)
{
    //备份链表头指针地址
    LList_t *P = Head->next;
    int x;
    //循环判断链表节点数量
    while (NULL == P->next)
    {
        x++;
    }
    //数组中不足K个节点
    if (x < k)
    {
        return false;
    }
    LList_t *P1 = Head->next;
    //循环找的倒数第K个节点
    for (int i = 0; i <= x - k; i++)
    {
        P1 = P1->next;
    }
    //输出data值
    printf("data=%d\n", P1->data);
    return true;
}
​```

标签:个值,Head,next,链表,LList,data,倒数第
From: https://www.cnblogs.com/ljw-boke/p/18151587

相关文章

  • 删除链表中(有头节点)一个最小值节点
    删除链表中(有头节点)一个最小值节点/********************************************************************** name : deletelinkedlist* function:删除链表中(有头节点)一个最小值节点* argument:* @Head:链表结构体头头节点地址** retval :调用成功......
  • 链表的操作例题
    链表的删除操作题目:设计一个算法删除单链表L(有头结点)中的一个最小值结点。/********************************************name:DelNode*function:删除单链表L中的一个最小值结点*argument:@L:单链表L的地址*retval:None*date:2024/04/22*n......
  • 单向链表遍历插入和删除
    /***********************************************************************************filename:002_单向链表.cauthor:[email protected]:2024/04/22function:单向链表的遍历插入和删除功能的完善note......
  • 删除链表中指定结点
    删除链表中指定结点/********************************************************name:DelTargetNode* function:删除链表中指定的结点*argument*@head:链表头结点的地址*@num:需要删除的第num个结点**retva......
  • 设计一个算法删除单链表L(有头节点)中的一个最小值结点
    数据结构链表笔试题:设计一个算法删除单链表L(有头节点)中的一个最小值结点。/****************************************************************** * filename : linkedlist.c* author : [email protected]* data : 2024/04/22* function : 删除单链表中的一个最小......
  • 链表
    链表在C语言中,链表是一种常用的数据结构,它可以用来存储一系列的元素。链表中的每个元素都存储了下一个元素的地址,从而形成了一条链。这种结构使得在插入和删除元素时不需要像数组那样移动大量元素,因此它在插入和删除操作多的情况下有很大的优势。在C语言中,链表可以有多种实现方......
  • 设计一个算法删除单链表L(有头结点)中的一个最小值结点
    设计一个算法删除单链表L(有头结点)中的一个最小值结点/********************************************************************* 函数名称: LList_delatemin* 函数功能:删除单链表L(有头结点)中的一个最小值结点* 函数参数:* @a:*L*@b:*返回......
  • 假设该链表只给出了头指针 head。在不改变链表的前提下,请设计一个尽可能高效的算法,查
    假设该链表只给出了头指针head。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k(k为正整数)个位置上的结点。若查找成功,算法输出该结点的data值,并返回1;否则,只返回0。/********************************************************************* 函数名称......
  • 查找链表中倒数第k个数
    include<stdio.h>include<stdbool.h>include<stdlib.h>/********************************************************************函数名称: MinDelate函数功能:/*假设该链表只给出了头指针head。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k(......
  • C语言单向链表的创建和增删减查相关程序
    对单向链表进行删除和插入的程序设计/********************************************************************* filename: linkedlist.c* author :[email protected]* date :2024/04/22* function:实现单向链表的创建、拆入、删除功能* note :None**......