更新時間:2020-07-17 15:22:15 來源:動力節點 瀏覽2039次
1.對字符串進行排序,用任意一種編程語言來實現,不能使用現有的類,在排序中,字符串“Bc”,“Ad”,“aC”,“Hello”,“X man”,“little”,“During”,“day”能夠排序成“Ad”,"aC",“Bc”,“During”,“day”,“Hello”,“little”,“Hello”,也就是說,在排序的過程并不是傳統的按照字符串排序,在排序中還需要將小寫字母一并排序,也就是說a字符串要在B或b之前。
import?java.util.Arrays;???
import?java.util.Comparator;???
?/**??
?*?微軟面試題-按照字母排序.
??
?*?小寫字母在大寫后面,字母B/b在字母A/a后面
??
?*???
?*?@author?老紫竹?JAVA世紀網(java2000.net)??
?*???
?*/??
class?T?{???
??private?static?final?int?MASK?=?0xFFDF;?//?用來把小寫變成大寫???
??
??public?static?int?compare(String?o1,?String?o2)?{???
????int?length1?=?o1.length();???
????int?length2?=?o2.length();???
????int?length?=?length1?>?length2???length2?:?length1;???
????int?c1,?c2;???
????int?d1,?d2;???
????for?(int?i?=?0;?i?<?length;?i++)?{???
??????c1?=?o1.charAt(i);???
??????c2?=?o2.charAt(i);???
??????d1?=?c1?&?MASK;???
??????d2?=?c2?&?MASK;???
??????if?(d1?>?d2)?{???
????????return?1;???
??????}?else?if?(d1?<?d2)?{???
????????return?-1;???
??????}?else?{???
????????if?(c1?>?c2)?{???
??????????return?1;???
????????}?else?if?(c1?<?c2)?{???
??????????return?-1;???
????????}???
??????}???
????}???
????if?(length1?>?length2)?{???
??????return?1;???
????}?else?if?(length1?<?length2)?{???
??????return?-1;???
????}???
????return?0;???
??}???
??
??public?static?void?sortByPOPO(String[]?args)?{???
????String?tmp;???
????for?(int?i?=?0;?i?<?args.length;?i++)?{???
??????for?(int?j?=?i?+?1;?j?<?args.length;?j++)?{???
????????if?(compare(args[i],?args[j])?>?0)?{???
??????????tmp?=?args[i];???
??????????args[i]?=?args[j];???
??????????args[j]?=?tmp;???
????????}???
??????}???
????}???
????//?[Ad,?aC,?Bc,?During,?day,?Hello,?little,?X?man]???
????System.out.println(Arrays.toString(args));???
??}???
??
??public?static?void?main(String[]?args)?{???
????String[]?strs?=?{?"Bc",?"Ad",?"aC",?"Hello",?"X?man",?"little",?"During",???
????????"day"?};???
????sortByPOPO(strs);???
??
??}???
}
以上就是動力節點java培訓機構的小編針對“微軟Java筆試題之按照字母排序”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習