zoukankan      html  css  js  c++  java
  • 7-19 求链式线性表的倒数第K项

    7-19 求链式线性表的倒数第K项(20 分)

    给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字。

    输入格式:

    输入首先给出一个正整数K,随后是若干正整数,最后以一个负整数表示结尾(该负数不算在序列内,不要处理)。

    输出格式:

    输出倒数第K个位置上的数据。如果这个位置不存在,输出错误信息NULL

    输入样例:

    4 1 2 3 4 5 6 7 8 9 0 -1
    

    输出样例:

    7
    思路:这个链表都不具有随机性,脑袋有坑用链表??然后看了下百度上有人用链表直接遍历就行,没意思没意思
    以下AC代码非链表:
    #include<stdio.h>
    #include<vector>
    #include<sstream>
    #include<iostream>
    using namespace std;
    int main()
    {
        int K, N = 0;
        string str;
        getline(cin, str);
        vector<int>vec;
        stringstream ss;
        ss << str;
        ss >> K;
        for (int temp; ss >> temp, temp >= 0; N++)
        {
            vec.push_back(temp);
        }
        
        if (K<0 || K>N) cout << "NULL" << endl;
        else cout << vec[N - K] << endl;
        return 0;
    }
    
    
    
     
  • 相关阅读:
    Redis 的基本操作、Key的操作及命名规范
    python离线安装外部库(第三方库)
    STL之deque
    STL之list
    STL学习之vector
    STL三种标准容器
    Lua系统库
    Lua输入输出库
    Lua字符串库
    Lua面向对象
  • 原文地址:https://www.cnblogs.com/zengguoqiang/p/8455935.html
Copyright © 2011-2022 走看看