文档详情

程序设计训练.pdf

发布:2019-03-23约3.9万字共46页下载文档
文本预览下载声明
目 录 前言 计蒜客矩阵翻转(简单) 计蒜客加一 计蒜客最大子阵列 计蒜客判断日期是否符合格式 BASIC-11-十六进制转十进制 蓝桥杯校赛选拔小试题记录 BASIC-9-特殊的回文数 BASIC-10-十进制转十六进制 BASIC-12-十六进制转八进制 ALGO-1--区间k大数查询 经典递归问题集锦 ALGO-95--2的次幂表示 ALGO-2--最大最小公倍数 ALGO-92--前缀表达式 (并用正则扩展 ) ALGO-90--出现次数最多的整数 ALGO-122--未名湖边的烦恼 ALGO-91Anagrams问题 本文档使用 看云 构建 - 2 - 前言 前言 原文出处 :程序设计训练 作者 :u012706811 本系列文章经作者授权在看云整理发布 ,未经作者允许 ,请勿转载 ! 程序设计训练 做一些程序设计题目,训练编程能力,申请专栏,督促自己 本文档使用 看云 构建 - 3 - 计蒜客矩阵翻转(简单) 计蒜客矩阵翻转(简单) 做这道题的过程中,了解到java的二维数组实际上就是多个一维数组的数组,所以类似下面这样的赋值是可以 实现的. public static void upturn(int d[][],int a,int b) { int[] e new int[b]; for (int i 0; i a/2; i++) { e d[i]; d[i] d[a-i-1]; d[a-i-1] e; } } 有了这个特性,那么矩阵翻转就变得很方便了,不过左右翻转,这个倒是没法实现 完整代码如下 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner input new Scanner(System.in); int a,b,c; a input.nextInt(); b input.nextInt(); c input.nextInt(); int[][] d new int[a][b]; for (int i 0; i a; i++) { for (int j 0; j b; j++) { d[i][j] input.nextInt(); } } if(c 1){ upturn(d, a, b); }else { leftturn(d, a, b); } for (int[] is : d) { for (int i : is) { System.out.print(i+ ); } System.out.println(); } } public static void upturn(int d[][],int a,int b) { int[] e new int[b]; for (int i 0; i a/2; i++) { 本文档使用 看云 构建 - 4 - 计蒜客矩阵翻转(简单)
显示全部
相似文档