输入一个链表,反转链表后,输出链表的所有元素

import com.doubleLinkedList.Node;

public class ReverseList {

    public Node ReverseList1(Node head){
        Node current=head;
        Node prevnode=null;
        Node newhead=null;
        if(current==null){

            throw new NullPointerException("no node this listnode!");

        }

        while(current!=null){

            Node nextnode=current.next;

            current.next=prevnode;
            if(nextnode==null){

                newhead=current;

            }

            prevnode=current;
            current=nextnode;

        }

        return newhead;

    }

}
时间: 2024-10-12 14:59:27

输入一个链表,反转链表后,输出链表的所有元素的相关文章

用指针??输入一个数组,逆序输出该数组

/* *Copyright(c) 2014 烟台大学计算机学院 *All rights reserved. * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:杨汉宁 * 完成日期:2014年 12 月 11 日 * 版 本 号:v1.0 * * 问题描述:输入一个数组,逆序输出该数组 * 输入描述:输入一个数组 * 程序输出:逆序输出该数组 */ #include <iostream> us

【c语言】有一函数:x &lt; 0 ,y = -1;x = 0,y = 0;x &gt; 0,y = 1,编程输入一个x值,要求输出对应的y

// 有一函数:x < 0 ,y = -1;x = 0,y = 0;x > 0,y = 1,编程输入一个x值,要求输出对应的y #include <stdio.h> int main() { int x,y; printf("请输入x:"); scanf("%d",&x); if(x > 0) y = 1; else if(x < 0) y = -1; else y = 0; printf("对应的y值是:%d\

matlab_exercise(2)----输入一个三位数,依次输出其个位数字,十位数字,百位数字

第一次作业--第二题 输入一个三位数,依次输出其个位数字,十位数字,百位数字. 1 %第二题 2 %注意:将文件命名为math_2018_4_02_01.m 3 %先判断输入的是不是三位数 4 shuru ='请输入一个三位数'; 5 x=input(shuru) 6 7 if x>100&&x<=999; 8 alert=warndlg('输入正确'); 9 b=floor(x/100) 10 % b=fix(x/100)%向下取整 11 c=fix(mod(x,100)/1

输入一个整数矩阵,计算位于矩阵边缘的元素之和

输入一个整数矩阵,计算位于矩阵边缘的元素之和.所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素. 源代码: #include<stdio.h> #include<stdlib.h> int main() { int m,n;//矩阵的长和宽 int sum = 0; printf("输入矩阵的长和宽\n"); scanf("%d%d",&m,&n); int a[m][n];//存储矩阵的值 //为矩阵

c程序设计 8.8写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出&quot;1_9_9_0&quot;。

#include <stdio.h> //整型的数字1+48=符号数字1,整型的数字2+48=符号数字2... void main(){ int n1; void numToStr(int m); printf("请输入一个四位数字:\n"); scanf("%d",&n1); numToStr(n1); } void numToStr(int m){ int a,b,c,d,i,j; char str[7]; a=m/1000; b=(m-a*

C++单链表反转、两有序链表合并仍有序

1 #include<iostream> 2 3 struct Node 4 { 5 int data; 6 Node *next; 7 }; 8 9 typedef struct Node Node; 10 11 Node *Reverse(Node *head) 12 { 13 if (NULL == head || NULL == head->next) 14 return head; 15 Node *p1 = head; 16 Node *p2 = p1->next; 1

输入一个一维数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

public class shuzujiaohuan { public static void main(String[] args) {  // TODO 自动生成的方法存根  Scanner reader=new Scanner(System.in);  int[] a=new int[10];  for(int i=0;i<a.length;i++){   System.out.print("请输入"+a.length+"个数字,当前第"+(i+1)+&

输入一个新的网址后到完全显示页面,浏览器做了哪些工作?

知识要点:浏览器缓存机制,资源下载序,css渲染与js执行顺序 当浏览器第一次请求某个URL时,顺利访问的话,服务器返回状态200的状态,同时会返回给浏览器一些Headers集合,例如set-cookie,Last-Mondified,Etag等等下面重点说明Last-Mondified与Etag,即浏览器缓存. HTTP/1.x 200 OKDate:Mon, 05 Jan 2015 15:32:11 GMT ETag:"1815c-0-451b46c0" Expires:Thu,0

控制台输入一个数组,然后倒序输出

static void Main(string[] args) { Console.WriteLine("请输入十个数,并以空格隔开:"); string string1 = Console.ReadLine(); string[] string2 = System.Text.RegularExpressions.Regex.Split(string1, @"[ ]+");//表示按空格分隔,正则[0-9]表示匹配0到9的任意字符,这里匹配的是空格 string[]

输入一个日期和时间,输出下一秒的日期和时间

1 #include <stdlib.h> 2 #include <stdio.h> 3 #include <string> 4 #include <string.h> 5 #include <iostream> 6 #include <vector> 7 #include <stack> 8 using namespace std; 9 #define debug(x) cout << #x <<