1. 程式人生 > >建立一個長度是5的隨機字串,隨機字元有可能是數字,大寫字母或者小寫字母,並將它從小到大排序

建立一個長度是5的隨機字串,隨機字元有可能是數字,大寫字母或者小寫字母,並將它從小到大排序

無力吐槽。。。

基礎是真的差,一個直接排序搞了一下午都沒成功。僅僅是對於基本知識點理解不透徹,少加一個等號。

看別人找工作,語言是基礎,還要懂linux,資料結構與演算法。。。。。

加油吧。

public class suijizifuchuan {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		char[] c = new char[62];
		for(int i = 0;i<=61;i++){
			if(i<26){
				int a = i + 65;
				c[i] = (char)a;
			}
			else if(i>=26&i<52){
				int a = i-26 +97;
				c[i] = (char)a;
			}
			else if(i>=52&i<62){
				int a = i -52+48;
				c[i] = (char)a;
				}
			}		
		for(char b : c){
			System.out.print(b);	//輸出全部字元
		}
		System.out.println();
		String str = "";
		char[] f = new char[5];
		for (int i = 0;i<5;i++){
		int e = (int)(Math.random()*62);
		f[i] = c[e];
		}
		
		System.out.println(f);
		for(int i = 1;i <5;i++){        //氣泡排序
			for(int j = 0;j<4;j++){
			if(f[j]>f[j+1]){
				char temp = f[j];
				f[j] = f[j+1];
				f[j+1] = temp;
			}
		}
		}
		System.out.println(f);
		 
		for(int i = 1;i<f.length;i++){   //直接排序
			int index = 0;
			for(int j =0;j<=f.length-i;j++){
				if(f[j]>f[index]){
					index = j;
				}
			}
			char temp = f[f.length-i];
			f[f.length-i] = f[index];
			f[index] = temp;
		}
		System.out.println(f);
		
		Arrays.sort(f);                  //Arrays.sort排序
		for(int i:f){
			System.out.println(f);
		}
	
	}
}