博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
单链表的建立及逆置代码,方法二
阅读量:4173 次
发布时间:2019-05-26

本文共 1533 字,大约阅读时间需要 5 分钟。

public class Test {
/** * @param args */ public static void main(String[] args) {
//单边链表的生成与反转,方法二 int []arr={3,5,1,2,4}; ListTest listTest=new ListTest(); Node head=listTest.create(arr); Node sourNode=head; while(sourNode!=null){
System.out.print(" "+sourNode.getValue()); sourNode=sourNode.getNext(); } System.out.println(" "); Node reNode=listTest.revers(head); while(reNode!=null){
System.out.print(" "+reNode.getValue()); reNode=reNode.getNext(); } } } public class ListTest {
public Node create(int []arr) {
Node head=new Node(arr[0]); Node cur=null; Node tempNode=null; for (int i = 1; i < arr.length; i++) {
tempNode=new Node(arr[i]); if(i==1){
head.setNext(tempNode); }else {
cur.setNext(tempNode); } cur=tempNode; } return head; } public Node revers(Node head){
if((null==head)||(null==head.getNext())){
return head; } Node pPre=head; Node pNext=null; Node curNode=pPre.getNext(); while(curNode!=null){
pNext=curNode.getNext(); curNode.setNext(pPre); pPre=curNode; curNode=pNext; } head.setNext(null); return pPre; } } package com.List.sym; public class Node {
private int value; private Node next; public Node(int value){
this.value=value; } public int getValue() {
return value; } public void setValue(int value) {
this.value = value; } public Node getNext() {
return next; } public void setNext(Node next) {
this.next = next; } }

转载地址:http://dfdai.baihongyu.com/

你可能感兴趣的文章
百度现场面试:JVM+算法+Redis+数据库!(三面)
查看>>
java架构之路(多线程)JMM和volatile关键字
查看>>
创业感悟:技术兄弟为什么一直没有起来
查看>>
打破技术的认知边界
查看>>
IntelliJ IDEA导入Zookeeper源码
查看>>
Dubbo源码分析系列之服务的发布
查看>>
Java集合容器面试题(2020最新版)
查看>>
我用分布式事务干掉了一摞简历
查看>>
微服务架构-从理想到现实
查看>>
高可用RabbitMQ集群的搭建及原理分析
查看>>
JAVA 基于Redis的分布式锁
查看>>
应对程序员面试,你必须知道的八大数据结构
查看>>
Redis和多路复用模型
查看>>
SQL 性能起飞了!
查看>>
ElasticSearch 面试 4 连问,你顶得住么?
查看>>
架构师成功沟通的三个关键
查看>>
共享锁、排他锁、互斥锁、悲观锁、乐观锁、行锁、表锁、页面锁、不可重复读、丢失修改、读脏数据...
查看>>
我是如何用 redis 做实时订阅推送的
查看>>
Mysql索性为什么要用B+Tree当索引
查看>>
以淘宝网为例,解析大型Java项目架构演进
查看>>