我是靠谱客的博主 内向柜子,最近开发中收集的这篇文章主要介绍6-4 链式表的按序号查找,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

---恢复内容开始---

https://pintia.cn/problem-sets/15/problems/727

本题要求实现一个函数,找到并返回链式表的第K个元素。

函数接口定义:

ElementType FindKth( List L, int K );

其中List结构定义如下:

typedef struct LNode *PtrToLNode;
struct LNode {
    ElementType Data;
    PtrToLNode Next;
};
typedef PtrToLNode List;

L是给定单链表,函数FindKth要返回链式表的第K个元素。如果该元素不存在,则返回ERROR

裁判测试程序样例:

#include <stdio.h>
#include <stdlib.h>

#define ERROR -1
typedef int ElementType;
typedef struct LNode *PtrToLNode;
struct LNode {
    ElementType Data;
    PtrToLNode Next;
};
typedef PtrToLNode List;

List Read(); /* 细节在此不表 */

ElementType FindKth( List L, int K );

int main()
{
    int N, K;
    ElementType X;
    List L = Read();
    scanf("%d", &N);
    while ( N-- ) {
        scanf("%d", &K);
        X = FindKth(L, K);
        if ( X!= ERROR )
            printf("%d ", X);
        else
            printf("NA ");
    }
    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

1 3 4 5 2 -1
6
3 6 1 5 4 2

输出样例:

4 NA 1 2 5 3 

提交内容

ElementType FindKth( List L, int K )
{
    if(L==NULL || K<=0)
        return ERROR;
    for(int i=0;i<K-1;i++)
    {
        if(L!=NULL)
            L=L->Next;
        else
            return ERROR;
    }
    return L==NULL?ERROR:L->Data;
}

 

转载于:https://www.cnblogs.com/cbattle/p/10755388.html

最后

以上就是内向柜子为你收集整理的6-4 链式表的按序号查找的全部内容,希望文章能够帮你解决6-4 链式表的按序号查找所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部