算法之链表逆序排列
算法纯属个人爱好,欢迎交流,共享
/** * */ package com.zimo.sequence; /** * 逆序排列 * @author 子墨 * * 2015-3-11下午2:31:55 */ public class Node { int data; Node next = null; public Node(int data){ this.data=data; } /** * 1->2->3->4->5->6->7->8->9 * 定义一个p * 1.取1,付给p * 2.取2,2->1 * 3.去3,3->2->1依次类推 * @param head * @return */ public static Node reverse(Node head){ Node p = null; Node q = head; while (head.next!=null) { p = head.next; head.next = p.next; p.next = q; q = p; } return q; } /** * @param args */ public static void main(String[] args) { Node head = new Node(0); Node node = head; /** * 给node赋值 * 1->2->3->4->5->6->7->8->9 */ for(int i = 1 ; i < 10; ++i){ Node n = new Node(i); node.next = n; node = n; System.out.println(n.data); } head = reverse(head); while(head.next != null){ System.out.println(head.data); head = head.next; } } }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。