剑指 Offer 06. 从尾到头打印链表

    技术2022-07-11  77

    输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。

     

    示例 1:

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

    /**

     * Definition for singly-linked list.

     * public class ListNode {

     *     int val;

     *     ListNode next;

     *     ListNode(int x) { val = x; }

     * }

     */

    class Solution {

        public int[] reversePrint(ListNode head) {

            

            ListNode pre = null;

            ListNode next = null;

            ListNode cur = head;

            int i = 0;

            while(cur != null){

                next = cur.next;

                cur.next = pre;

                pre = cur;

                cur = next; 

                i++;

            }

            int[] help = new int[i];

            for(int j = 0; j < i; j++){

                help[j] = pre.val;

                pre = pre.next;

            }

            return help;

        }

    }

    Processed: 0.019, SQL: 9