java经典算法之逆序输出

 1 /**
 2   *输入字符,将数组逆序输出
 3   */
 4 import java.util.Scanner;
 5 public class InReserve
 6 {
 7     public static void main(String[] args)
 8     {
 9         reverse();
10     }
11     public static void reverse(){
12
13         String[] arr =new String[5];
14         for(int i=0;i<arr.length;i++){
15             Scanner input = new Scanner(System.in);
16             System.out.println("请输入第"+(i+1)+"个字符");
17             arr[i] = input.next();
18         }
19
20         for(int p=0,q=arr.length-1;p<q;p++,q--){
21             String temp = "";    //声明临时变量,存储arr[p]
22             temp = arr[p];
23             arr[p] = arr[q];
24             arr[q] = temp;        //
25         }
26         toString(arr);    //        调用toString()方法输出数组
27     }
28
29     public static void toString(String[] arr){
30         String str = "[";
31         for(int i=0;i<arr.length;i++){
32             str += arr[i];
33             if(i<arr.length-1){
34                 str += ",";
35             }
36         }
37         str += "]";
38         System.out.println(str);
39      }
40 }

原文地址:https://www.cnblogs.com/zhangningning/p/9510945.html

时间: 2024-07-30 21:10:47

java经典算法之逆序输出的相关文章

Problem A: 零起点学算法80——逆序输出(数组练习)

#include<stdio.h>int main(){    int T,i,j,a[20];    scanf("%d",&T);    for(i=1;i<=T;i++){        int n;        scanf("%d",&n);        for(j=0;j<n;j++){            scanf("%d",&a[j]);        }        for

算法竞赛入门经典_3.1_数组_逆序输出_开灯问题

又是新的一天,继续更新. 今天进入了新的章节,数组和字符串 1.逆序输出问题: 先来看代码吧 #include <stdio.h> //逆序输出 2017-8-16 #define maxn 105 int a[maxn]; int main(int argc, char* argv[]) { //int a[maxn]; int x, n = 0; while (scanf("%d", &x) == 1) a[n++] = x; for (int i = n -

java版的单向链表的逆序输出

将单向链表逆序输出,方法有三种: a.遍历链表,将每个节点的内容存入一个数组中,然后逆序输出数组(最简单的做法) b.使用栈来逆序输出 c.直接将链表逆序然后输出(本文采用的方法) 先介绍算法: 1). 若链表为空或只有一个元素,则直接返回: 2). 设置两个前后相邻的指针p,q. 将p所指向的节点作为q指向节点的后继: 3). 重复2),直到q为空 4). 调整链表头和链表尾 示例:以逆序A->B->C->D为例,图示如下 package com.moluo.shujujiegou;

Java入门:一些初学者需要掌握的基础算法程序——逆序输出

[问题] 将一个整数逆序输出. [思路] 有三种方法可以将一个数逆序输出: 1)使用while循环 2)使用for循环 3)使用递归 [代码] 程序1:使用while循环 import java.util.Scanner; class ReverseNumberWhile { public static void main(String args[]) { int num=0; int reversenum =0; System.out.println("Input your number an

Java逆序输出整数

题目要求:编写方法reverseDigit,将一个整数作为参数,并反向返回该数字.例如reverseDigit(123)的值是321.同时编写程序测试此方法. 说明:10的倍数的逆序,均以实际结果为准,如100的逆序为1.此方法也可以实现负数的逆序输出. 1 import java.util.Scanner; 2 3 public class Test { 4 static int reverseDigit(int n) { 5 int result = n, count = 1; //先将n赋

算法-整数的正序和逆序输出

其实上一篇文章用递归实现了整数的正序输出,思考了整数还是可以逆序输出,不过大同小异,没有太多差别: 正序输出 -(void)printOutNumber:(NSInteger)number{ //取整,不断的递归取整,之后取余 if (number>10) { [self printOutNumber:number/10]; } NSLog(@"数值%ld",number%10); } 逆序输出 循环输出,这个比较简单容易理解: -(void)reverseNumber:(NSI

网易云课堂_C语言程序设计进阶_第五周:递归与简单算法:递归、搜索、二分搜索、简单排序_1逆序输出的数列

1 逆序输出的数列(10分) 题目内容: 你的程序会读入一系列的正整数,预先不知道正整数的数量,一旦读到-1,就表示输入结束.然后,按照和输入相反的顺序输出所读到的数字,不包括最后标识结束的-1. 输入格式: 一系列正整数,输入-1表示结束,-1不是输入的数据的一部分. 输出格式: 按照与输入相反的顺序输出所有的整数,每个整数后面跟一个空格以与后面的整数区分,最后的整数后面也有空格. 输入样例: 1 2 3 4 -1 输出样例: 4 3 2 1 时间限制:2000ms内存限制:128000kb

Java例题_31 逆序输出数组的值

1 /*31 [程序 31 数组逆序] 2 题目:将一个数组逆序输出. 3 程序分析:用第一个与最后一个交换. 4 */ 5 6 /*分析 7 * 第一种方法:找到这个数组的中间下标,然后交换两端的数字,再顺序输出数组=====我觉得麻烦了 8 * 第二种方法:利用a.lengh找到数组的最后一个值,直接用递减的for循环,逆序输出 9 * */ 10 11 package homework; 12 13 public class _31 { 14 15 public static void m

Java经典算法案例

笔试中的编程题3 JAVA经典算法40例[程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... public class exp2{public static void main(String args[]){int i=0;for(i=1;i<=20;i++)System.out.println(f(i));}pu