题解 | #输出单向链表中倒数第k个结点#

输出单向链表中倒数第k个结点

http://www.nowcoder.com/practice/54404a78aec1435a81150f15f899417d

方法一:直接数组,假装是链表:

alt

use std::io::{self, *};
fn main() {
    let stdin = io::stdin();
    let mut is_first = 0;
    let mut v = String::new();
    for line in stdin.lock().lines() {
        let ll = line.unwrap();
        if is_first == 0 {
            is_first += 1;
        } else if is_first == 1 {
            v = ll;
            is_first += 1;
        } else if is_first == 2 {
            let k = ll.trim().parse::<usize>().unwrap_or(1);
            let v_link = v.trim().split(" ").collect::<Vec<&str>>();
            if k <= v_link.len() {
                println!("{}",v_link[v_link.len()-k]);
            }
            is_first = 0;
        }
        if is_first == 0 {
            v.clear();
        }
    }
}

方法二:VecDeque(双端队列)

待补全。。。
用 Rust 刷华为机试HJ 文章被收录于专栏

用 Rust 刷 HJ100 题,只需要懂基础 Rust 语法就能看懂

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务