首页 > 其他分享 >反转链表

反转链表

时间:2022-09-29 23:22:17浏览次数:47  
标签:curr val 反转 next 链表 new ListNode

题目:给定单链表的头节点 head ,请反转链表,并返回反转后的链表的头节点。

 

 

定义链表结构:

 

 

public class ListNode {
    int val;
    ListNode next;
    ListNode(){

    }
    ListNode(int val){
        this.val = val;
    }
    ListNode(int val,ListNode next){
        this.val = val;
        this.next = next;
    }

}

 

主要思想:

public class reverseList {
    public static void main(String[] args){
        reverseList r = new reverseList();
        ListNode node1 = new ListNode(5);
        ListNode node2 = new ListNode(6,node1);
        ListNode node3 = new ListNode(7,node2);
        r.fun(node3);


    }
    public ListNode fun(ListNode head){
        ListNode preNode = null;
        ListNode curr = head;
        while(curr != null){
            ListNode next = curr.next;
            curr.next = preNode;
            preNode = curr;
            curr = next;
        }
        return preNode;
    }
}

 

标签:curr,val,反转,next,链表,new,ListNode
From: https://www.cnblogs.com/99kol/p/16743486.html

相关文章

  • leetcode链表1-6
    目录leetcode链表1.删除链表中的节点2.删除链表中倒数第n个节点3.反转链表4.合并两个有序链表5.判断回文链表6.判断是否为环形链表leetcode链表1.删除链表中的节点题目:......
  • 7. 整数反转【取余】
    题目给你一个32位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过32位的有符号整数的范围[−231,231−1],就返回0。假设环境不允许存......
  • 单链表注意事项
    经常采用的方法有头插法、尾插法、逆置法、归并法、双指针法等,对具体问题需要灵活变通;对于顺序表,由于可以直接存取,经常结合排序和查找的几种算法设计思路进行设计,如归并排......
  • 循环链表(约瑟夫环)思路及实现
    循环链表单链表的尾节点指向首节点,即可构成循环链表约瑟夫环约瑟夫问题:有N个人围成一圈,每个人都有一个编号,编号由入圈的顺序决定,第一个入圈的人编号为1,最后一个为N......
  • golang 的双向循环链表
                如下为go实现的双向循环列表。packagemainimport("fmt")typeRingstruct{prev,......
  • [数组和链表的区别]
    [数组和链表的区别]数组'''数组插入数据因为需要连在一起,如果内存空间不连续就得全体迁移,甚至出现内存空间足够但是由于不在一起而导致无法为数组分配内存。'''链......
  • 代码随想录第八天 |344.反转字符串 、541. 反转字符串II、剑指Offer 05.替换空格 、15
    第一题344.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使......
  • lc234判断回文链表 isPalindrome python3
    给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。classSolution:defisPalindrome(self,head:ListNode)->bool:v......
  • 单链表的递增排序
    voiesort(LinkList&L){LNode*p=L->next;LNode*pre;LNode*r=p->next;p->next=NULL;p=r;while(p!=NULL){r=p......
  • 反转字符串,单词按内部字符顺序输出
      conststr="Ilikeyou,butyoudon'tknow,I'msad."functionstrReverse(str){conststrList=str.split(',').reverse()strList.fo......