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

NowCoder BM1 反转链表

时间:2022-08-31 13:22:20浏览次数:77  
标签:pre ListNode cur val 链表 BM1 NowCoder null

描述
给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。
NowCoder BM1 反转链表

import java.util.*;
/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode ReverseList(ListNode head) {
        if(head == null){
            return null;
        }
        ListNode cur = head;
        ListNode pre = null;
        while(cur != null){
            //To record the next node before cutting off the list
            ListNode temp = cur.next;
            //assign pre to current next
            cur.next = pre;
            //assign current to pre
            pre = cur;
            //assign temp to current
            cur = temp;            
        }
        return pre;
    }
}

标签:pre,ListNode,cur,val,链表,BM1,NowCoder,null
From: https://www.cnblogs.com/chenjo/p/16642765.html

相关文章

  • Javascript中的链表
    Javascript中的链表数据结构的介绍文章。链表概念与应用于Javascript语言的实际示例。介绍数据结构是一种有效处理大量数据的手段,了解它的结构和组成为我们提供了更......
  • 数据结构之链表的原理
    链表:在计算机中用一组任意的存储单元存储线性表的数据元素称为链式存储结构,这组存储结构可以是连续的,也可以是不连续的,因此在存储数据元素时可以动态分配内存。注:在java中......
  • 从零构建链表
    最重要的头节点是这样创建的:        Node*Head=newNode;//头节点不存储数据        Head->next=NULL;        Node*pre=Head......
  • 83. 删除排序链表中的重复元素
    83.删除排序链表中的重复元素#由于是已排序的链表,判断前后是否为相同元素如果是则连接下下个不是则向前移动#code:#Definitionforsingly-linkedlist.#classLis......
  • 链表节点删除
      代码:1importjava.util.*;23publicclassMain{4publicstaticvoidmain(String[]args){5Scannerscan=newScanner(System.in);......
  • LeetCode 21. 合并两个有序链表
    题目题目链接:https://leetcode.cn/problems/merge-two-sorted-lists/将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的......
  • 61. 旋转链表
    提示:这个题目比较简单,只需要找到待断处的前一个节点就行,题目描述:给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。案例:输入:head=[1,2,3,4,......
  • 21级数据结构与算法实验2——链表
    21级数据结构与算法实验2——链表28天7-1单链表的创建及遍历分数30作者陈晓梅单位广东外语外贸大学读入n值及n个整数,建立单链表并遍历输出。输入格式:读入n及......
  • 链表
    今天做美团笔试,第二题就,题目大概是:对于一串n个数字:1,2…n,给一串操作,每次把指定的数字移动到最左边(最前面),输出最后的结果很明显,最直接的想法肯定就是模拟一个链表,每次把链表......
  • 内核链表中list_entry的实现原理
    内核链表中list_entry的实现原理先使用内核链表实现数据的基本使用。#include<stdio.h>#include<stdlib.h>#include"kernel_list.h"//内核链表的头文件struct......