题解 | #从单向链表中删除指定值的节点#

从单向链表中删除指定值的节点

https://www.nowcoder.com/practice/f96cd47e812842269058d483a11ced4f

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    // Write your code here
    while(line = await readline()){
        let arr = line.split(' ');
        let tmp = [arr[1]];
        // 注意数字存在 234,43 多位的情况,不只是7、8这种只有1位的
        for(let i=2;i<arr.length-1; i+=2){
            let now_v = arr[i];
            let pre = arr[i+1];
            let index = tmp.indexOf(pre);
            tmp = [...(tmp.slice(0,index+1)),now_v,...(tmp.slice(index+1))];    // 重新拼接数组
        }
        let remove = arr[arr.length -1];
        let ri = tmp.indexOf(remove);
        tmp.splice(ri,1);
        console.log(tmp.join(' '));
    }
}()

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务