java 之 数组倒置、单链表倒置
来源:互联网 发布:程序员去金融公司 编辑:程序博客网 时间:2024/06/05 15:51
数组倒置
这个主要是说明 在进行整数类型的数组的时候如果是交换位置的话适用位运算符的效率会很高。
public static void arrayReverse(int[] array) { if (null == array || array.length == 0 || array.length == 1) { return; } int length = array.length; for (int i = 0; i < length / 2; i++) { array[i] ^= array[length - i - 1]; array[length - i - 1] ^= array[i]; array[i] ^= array[length - i - 1]; } }
但链表的倒置
直接上代码了
public static Node nodeReverse(Node node) { //获取头节点 Node head = node; Node next = null; Node tmp = null; while(head != null) { //获取头节点的下区节点 next = head.next; //头节点的下个节点指向临时的Node head.next = tmp; //临时节点指向头节点 tmp = head; head = next; } node = tmp; return node; } public static void printNode(Node node) { if (node == null) return; while (node != null) { System.out.println(node.item); node = node.next; } } public static void main(String[] args) { Node head = new Node("head"); Node node1 = new Node("1"); Node node2 = new Node("2"); Node node3 = new Node("3"); Node node4 = new Node("4"); Node node5 = new Node("5"); head.next = node1; node1.next = node2; node2.next = node3; node3.next = node4; node4.next = node5; printNode(head); Node lNode = nodeReverse(head); printNode(lNode); }
1 0
- java 之 数组倒置、单链表倒置
- 数组元素倒置-Java
- java数组倒置
- Java-算法-数组倒置
- 数组倒置
- java单链表倒置
- java水仙花和数组倒置
- 倒置
- 单链表之创建与倒置
- 倒置单链表
- 倒置单链表
- 单链表倒置
- 单链表倒置
- 单链表倒置
- 单链表倒置
- 单链表倒置
- 数组进阶-数组倒置
- 一个数组倒置函数
- 228. Summary Ranges
- #ifdef #if defined
- android app应用启动时间监测
- jsp中想给导入的页面传参数
- lightoj 1047 - Neighbor House DP
- java 之 数组倒置、单链表倒置
- HDU 4300 Clairewd’s message(KMP)
- web研发模式演变
- mybatis 主键的返回
- 9个用来加速 HTML5 应用的方法
- UML类图关系大全【转】
- 基于Oracle&Hibernate&Spring,集合了多种常用方法,方便调用
- AttributeInspector去掉表头
- MFC发送HTTP请求