链表编程题集合(leetcode)

命运对每个人都是一样的,不一样的是各自的努力和付出不同,付出的越多,努力的越多,得到的回报也越多,在你累的时候请看一下身边比你成功却还比你更努力的人,这样,你就会更有动力。

导读:本篇文章讲解 链表编程题集合(leetcode),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]
public ListNode reverseList(ListNode head) {
        ListNode p=new ListNode();
        while (head!=null) {
          ListNode q=head.next;
        head.next=p.next;
        p.next=head;
          head=q;
        }
        return p.next;
    }
ListNode p=new ListNode();
 ListNode q=p;
    public  ListNode reverseList(ListNode head) {
        if(head==null)
        return head;
       if(head.next!=null)
           reverseList(head.next);
           head.next=q.next;
           q.next=head;
           q=head;
       return p.next;
    }
}

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回
新的头节点

输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]
public ListNode removeElements(ListNode head, int val) {
        ListNode listNode=new ListNode();
        listNode.next=head;
        ListNode p=listNode;
        while (listNode.next!=null) {
            if(listNode.next.val==val) {
            listNode.next=listNode.next.next;
            }
            else 
                listNode=listNode.next;
        }
        return p.next;
    }

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)

输入:head = [1,2,3,4]
输出:[2,1,4,3]
 public ListNode swapPairs(ListNode head) {
        if(head==null||head.next==null)
            return head;
        ListNode p=new ListNode();
        p.next=head;
        ListNode q=p;
        while (head.next!=null){
            ListNode temp=head.next;
            head.next=temp.next;
            temp.next=head;
            p.next=temp;
            p=head;
            head=p.next;
        }
        return q.next;
    }

给你一个链表,删除链表的倒数第 n
个结点,并且返回链表的头结点。


输入:head = [1,2,3,4,5], n = 2
输出:[1,2,3,5]

 public ListNode removeNthFromEnd(ListNode head, int n) {
        int sum=0,k=0;
        ListNode head1=head;
        while (head1!=null){
            head1=head1.next;
            sum++;
        }
        ListNode p=new ListNode();
        p.next=head;
        ListNode q=p;
        int r = sum - n+1;
        while (p.next!=null){
            k++;
            if(k==r){
                p.next=p.next.next;
            }
            else
            p=p.next;
        }
        return q.next;
    }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/143052.html

(0)

相关推荐

  • Java中if else、多重if、switch效率对比详细讲解

    导读:本篇文章讲解 Java中if else、多重if、switch效率对比详细讲解,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    技术随笔 2023年1月31日
    00
  • Android–viewpager+fragment+recycleview实现仿点餐界面

    导读:本篇文章讲解 Android–viewpager+fragment+recycleview实现仿点餐界面,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    技术随笔 2023年2月18日
    00
  • BeanFactory和FactoryBean的区别

    导读:本篇文章讲解 BeanFactory和FactoryBean的区别,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    技术随笔 2023年1月10日
    00
  • 编程范式:函数式编程&防御式编程&响应式编程&契约式编程&流式编程

    勤奋不是嘴上说说而已,而是实际的行动,在勤奋的苦度中持之以恒,永不退却。业精于勤,荒于嬉;行成于思,毁于随。在人生的仕途上,我们毫不迟疑地选择勤奋,她是几乎于世界上一切成就的催产婆。只要我们拥着勤奋去思考,拥着勤奋的手去耕耘,用抱勤奋的心去对待工作,浪迹红尘而坚韧不拔,那么,我们的生命就会绽放火花,让人生的时光更加的闪亮而精彩。

    导读:本篇文章讲解 编程范式:函数式编程&防御式编程&响应式编程&契约式编程&流式编程,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    技术随笔 2023年5月8日
    00
  • 算法—详细讲解单向循环链表的实现(python)

    导读:本篇文章讲解 算法—详细讲解单向循环链表的实现(python),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    2023年1月12日
    00
  • 【JavaScript】一文了解事件对象

    生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

    导读:本篇文章讲解 【JavaScript】一文了解事件对象,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    技术随笔 2023年4月25日
    00
  • 网络安全初、中、高阶学习路线图,建议收藏!

    导读:本篇文章讲解 网络安全初、中、高阶学习路线图,建议收藏!,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    2023年1月17日
    00
  • CentOS7安装MySQL8(超级详细-无坑)

    导读:本篇文章讲解 CentOS7安装MySQL8(超级详细-无坑),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    技术随笔 2023年2月2日
    00
  • 不能再详细的C++基本数据类型剖析

    导读:本篇文章讲解 不能再详细的C++基本数据类型剖析,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    技术随笔 2023年3月3日
    00
  • Spring Data MongoDB使用

    导读:本篇文章讲解 Spring Data MongoDB使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    技术随笔 2023年2月13日
    00

发表回复

登录后才能评论