zoukankan      html  css  js  c++  java
  • 4-输入一个链表,反转链表后,输出新链表的表头

    题目:输入一个链表,反转链表后,输出新链表的表头。

    • 代码如下
     1 public class Demo3 {
     2 
     3     public static void main(String[] args) {
     4         // 先创建多个节点,供测试使用
     5         ListNode listNode1 = new ListNode(1);
     6         ListNode listNode2 = new ListNode(2);
     7         ListNode listNode3 = new ListNode(3);
     8         ListNode listNode4 = new ListNode(4);
     9         ListNode listNode5 = new ListNode(5);
    10         // 把各个节点链起来
    11         listNode1.next = listNode2;
    12         listNode2.next = listNode3;
    13         listNode3.next = listNode4;
    14         listNode4.next = listNode5;
    15         listNode5.next = null;
    16 
    17         System.out.println("原始链表中的数据如下:");
    18         printList(listNode1);
    19         
    20         System.out.println("
    
    反转之后的链表:");
    21         ListNode reverseList = reverseList(listNode1);
    22         printList(reverseList);
    23     }
    24 
    25     public static ListNode reverseList(ListNode head) {
    26         // 如果当前链表为null,则直接返回null
    27         if (head == null)
    28             return null;
    29         ListNode next;
    30         ListNode pre = null;
    31         while (head != null) {
    32             next = head.next;
    33             head.next = pre;
    34             pre = head;
    35             head = next;
    36         }
    37         return pre;
    38     }
    39     
    40     /**
    41      * 遍历单链表
    42      * @param listNode
    43      */
    44     public static void printList(ListNode listNode) {
    45         ListNode tempNode = listNode;
    46         while(tempNode != null){
    47             System.out.printf("%d	",tempNode.val);
    48             tempNode = tempNode.next;
    49         }
    50     }
    51 }
    1 public class ListNode {
    2     int val;
    3     ListNode next = null;
    4 
    5     public ListNode(int val) {
    6         this.val = val;
    7     }
    8 }
    • 运行截图

  • 相关阅读:
    软件工程第六次作业
    软件工程第五次作业
    软件工程第四次作业
    软件工程第三次作业
    软件工程第二次作业
    软件工程第一次作业
    《CLSZS团队》:团队项目选题报告
    计算机软件工程 作业五
    计算机软件工程 作业四
    计算机软件工程 作业三
  • 原文地址:https://www.cnblogs.com/sun-/p/12680740.html
Copyright © 2011-2022 走看看