博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于动态数组的问题
阅读量:5961 次
发布时间:2019-06-19

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

import java.util.Scanner;import java.util.regex.Pattern;public class TestBubbleSort {	public static void main(String[] args) {				Scanner sc = new Scanner(System.in);				boolean flag = true;		String input = null;				int[] array = new int[10];		int len = 0;		while(flag) {			input = sc.next();			if(GetSafeNumber.isInteger(input)) {				array[len] = Integer.parseInt(input);				len ++;				if(len == array.length) {					int[] newArray = arrayInc(array);										array = newArray;				}			}			if(input.equals("quit")) {				flag = false;			}		}				System.out.println("Origial:");		ArraySort.dispaly(array, len);		System.out.println();		System.out.println("Sorted");		ArraySort.bubbleSort(array, len);		ArraySort.dispaly(array, len);	}		public static int[] arrayInc(int[] array) {		int[] inc = new int[10];		int[] newArray = new int[array.length + inc.length];		for(int i = 0; i < array.length; i++) {			newArray[i] = array[i];		}				return newArray;	}		/**	 * 判断是否是整数	 * 方法:利用正则表达式	 * @param s 需要判断的字符串	 * @return 是整数返回真,否则返回假	 */	public static boolean isInteger(String s){		Pattern pattern = Pattern.compile("(\\-?)[0-9]*");		if(pattern.matcher(s).matches()) {			return true;		}		return false;	}}class ArraySort {		public static void bubbleSort(int[] array, int len) {		for (int i = 0; i < len; i++) {			for(int j = 0; j < len - i - 1; j++) {				if(array[j] > array[j + 1]) {					int temp;					temp = array[j];					array[j] = array[j + 1];					array[j + 1] = temp;				}			}		}	}		public static void dispaly(int[] array,int len) {		for (int i = 0; i < len; i++) {			System.out.print(array[i] +" ");		}	}	}

--------------------------------------------------------------------------------第二个优化版本-------------------------------------------------------

/** * @author YoursChang *  * 		   创建时间:2012-8-7 * 			 * 		  修改时间:2012-8-8 * 				 内容说明:用arraycopy取代了遍历拷贝 * 				 		    部分代码优化 */import java.util.Scanner;import java.util.regex.Pattern;public class TestBubbleSort {	public static void main(String[] args) {				Scanner sc = new Scanner(System.in);				boolean flag = true;		String input = null;				int[] array = new int[10];		int len = 0;		while(flag) {			input = sc.next();			if(GetSafeNumber.isInteger(input)) {				array[len] = Integer.parseInt(input);				len ++;				if(len == array.length) {					int[] newArray = arrayInc(array);										array = newArray;				}			}			if(input.equals("quit")) {				flag = false;			}		}				System.out.println("Origial:");		ArraySort.dispaly(array, len);		System.out.println();		System.out.println("Sorted");		ArraySort.bubbleSort(array, len);		ArraySort.dispaly(array, len);	}		/**	 * 动态的增长数组的长度	 * @param array 需要增长的数组	 * @return 增长了 increase个单位的数组	 */	public static int[] arrayInc(int[] array) {		int increase = 10;		int[] newArray = new int[array.length + increase];				System.arraycopy(array,0,newArray,0,array.length);			return newArray;	}		/**	 * 判断是否是整数	 * 方法:利用正则表达式	 * @param s 需要判断的字符串	 * @return 是整数返回真,否则返回假	 */	public static boolean isInteger(String s){		Pattern pattern = Pattern.compile("(\\-?)[0-9]*");		if(pattern.matcher(s).matches()) {			return true;		}		return false;	}}class ArraySort {		public static void bubbleSort(int[] array, int len) {		for (int i = 0; i < len; i++) {			for(int j = 0; j < len - i - 1; j++) {				if(array[j] > array[j + 1]) {					int temp;					temp = array[j];					array[j] = array[j + 1];					array[j + 1] = temp;				}			}		}	}		public static void dispaly(int[] array,int len) {		for (int i = 0; i < len; i++) {			System.out.print(array[i] +" ");		}	}	}

转载于:https://www.cnblogs.com/wjchang/archive/2012/08/07/3671590.html

你可能感兴趣的文章
在Node.js中使用C++模块
查看>>
Redis持久化RDB和AOF优缺点是什么?
查看>>
iOS-性能优化深入探究
查看>>
阿里云Redis混合存储典型场景:如何轻松搭建视频直播间系统
查看>>
基于阿里云服务搭建的典型技术架构
查看>>
JavaEE PayPal 上线流程
查看>>
Android设备wifi开发
查看>>
xshell能ping通虚拟机,不能连接虚拟机
查看>>
任意层级树型数据的遍历和过滤
查看>>
iOS 防止反编译加密方法
查看>>
微信小程序开发的一点心得
查看>>
关于用nodejs编写管理系统
查看>>
深入理解node stream机制及其实现原理
查看>>
JavaScript 中错误正确处理方式,你用对了吗?
查看>>
分辨率,dpi,dp,与最终显示大小的四角关系
查看>>
JavaSE基础:抽象类
查看>>
Android实战 粗略实现一个简单的C S结构聊天室的功能
查看>>
购物车原理以及实现
查看>>
浅探webpack优化
查看>>
ReactNative与iOS的交互
查看>>