算法之链表逆序排列
2015-03-11 15:39
239 查看
算法纯属个人爱好,欢迎交流,共享
/** * */ 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; } } }
相关文章推荐
- 线性单向链表的逆序排列算法一例
- 将链表逆序排列的一个程序及思考的对链表依某一元素排序方法
- 简单算法 - 链表逆序思路详解
- 算法题:链表的递归逆序
- 算法--链表的K逆序问题
- 蓝桥杯 ADV-103 算法提高 逆序排列
- 算法提高 逆序排列
- 将一个链表按逆序排列,即将链头当链尾,链尾当链头。
- 算法学习十四----逆序输出链表
- 已知线性表中元素以值递增有序排列,并以单链表作为存储结构,设计一个算法,删除表中值相同的多余元素
- 每天一个算法之链表逆序
- 蓝桥杯 算法提高 逆序排列
- C/C++面试之算法系列--典型的几个链表操作-逆序和重排
- 【旧资料整理】初级算法-单/双链表逆序一点改进
- 设单链表以非递减有序排列,设计算法实现在单链表中删除值相同的多余结点
- 将一个链表按逆序排列
- 每天一算法(链表逆序,子字符串等几个一起)
- 将一个链表按逆序排列,即将链头当链尾,链尾当链头
- 【算法之链表(四)】在不使用额外节点存储空间的情况下,实现单链表逆序
- 算法提高 逆序排列