1,n=2夭委,m=3幅狮,請(qǐng)將n和m的值互換。
①株灸,int t; t=n; n=m; m=t;(最常用的方式)
②崇摄,n=n+m; m=n-m;n=n-m;(當(dāng)n和m的值很大時(shí),n+m的值可能超出int的范圍慌烧,從而使結(jié)果失去精度)
③配猫,n=nm;m=nm;(相當(dāng)于m=(nm)m);
n=nm;(相當(dāng)于n=n(n^m));(其利用了一個(gè)數(shù)同時(shí)異或另一個(gè)數(shù)兩次,結(jié)果仍是它自身的特性)
2杏死,選擇排序(升序)
public static void selectSort(int[ ] arr)
{
for(int x=0;x<arr.length-1;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[x]>arr[y])
{
int temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
3,冒泡排序(降序)
public static void bubbleSort(int[ ] arr)
{
for(int x=0;x<arr.length-1;x++)
{
for(int y=0;y<arr.length-x-1;x++)
{
if(arr[y]<arr[y+1])
{
int temp=arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
4淑翼,插入排序
public static int[] charu(int[] a){
for(int i=1;i<a.length;i++){
for(int j=i-1;j>=0;j--){
int min=a[j+1];
if(min<a[j]){
a[j+1]=a[j];
a[j]=min;
}
}
}
return a;
}
5,歸并排序
public class t3 {
public static void main(String[] args) {
int arr[] = {4,3,2,9,7,8,6,5,4};
split(arr,0,arr.length-1);
}
public static void split(int[] arr,int left,int right){
int mid = (right+left)/2;
if(left<right){
split(arr,left,mid);
split(arr,mid+1,right);
merger(arr,left,mid,right);
}
}
public static void merger(int[] arr,int left,int mid, int right){
int low1=left;
int low2=mid+1;
int temp[] = new int[right-left+1];
int index=0;
while(low1<=mid&&low2<=right){
if(arr[low1]<arr[low2]){
temp[index++]=arr[low1++];
}else{
temp[index++]=arr[low2++];
}
}
while(low1<=mid){
temp[index++]=arr[low1++];
}
while(low2<=right){
temp[index++]=arr[low2++];
}
for (int i = 0; i < index; i++) {
arr[left++]=temp[i];
}
System.out.println(Arrays.toString(arr));
《java測(cè)試題合集》
1坤塞、使用除余法时甚,計(jì)算 128 和 -257 的內(nèi)存二進(jìn)制值。寫出計(jì)算過(guò)程。
1既绩、128 的二進(jìn)制計(jì)算過(guò)程
2、-257 的二進(jìn)制計(jì)算過(guò)程
2圃酵、使用三種以上的循環(huán)方式實(shí)現(xiàn)99乘法表击纬。寫出思路與實(shí)現(xiàn)代碼。
1哪雕、for 循環(huán)實(shí)現(xiàn)99乘法表
2船殉、while 循環(huán)實(shí)現(xiàn)99乘法表
3、do whole 循環(huán)實(shí)現(xiàn)99乘法表
3斯嚎、寫一個(gè)方法利虫,使用 Scanner 傳入一個(gè)字母,如果是大寫堡僻,輸出小寫糠惫,反之輸出大寫。寫出思路與實(shí)現(xiàn)代碼钉疫。
1硼讽、思路
2、實(shí)現(xiàn)代碼
4牲阁、寫一個(gè)方法固阁,傳入一個(gè) Date 日期類型的參數(shù),輸出今天是星期幾咨油。寫出思路與實(shí)現(xiàn)代碼您炉。
1、思路
2役电、實(shí)現(xiàn)代碼
5赚爵、數(shù)組排序-冒泡排序。寫出思路與實(shí)現(xiàn)代碼法瑟。
1冀膝、思路
2、實(shí)現(xiàn)代碼
6霎挟、數(shù)組排序-選擇排序窝剖。寫出思路與實(shí)現(xiàn)代碼。
1酥夭、思路
2赐纱、實(shí)現(xiàn)代碼
7脊奋、數(shù)組排序-插入排序。寫出思路與實(shí)現(xiàn)代碼疙描。
1诚隙、思路
2、實(shí)現(xiàn)代碼
8起胰、數(shù)組排序-歸并排序久又。寫出思路與實(shí)現(xiàn)代碼。
1效五、思路
2地消、實(shí)現(xiàn)代碼
9、寫一個(gè)方法畏妖,計(jì)算任意兩個(gè)數(shù)組的交集脉执。寫出思路與實(shí)現(xiàn)代碼。
1瓜客、思路
2适瓦、實(shí)現(xiàn)代碼
10、寫一個(gè)方法谱仪,計(jì)算任意兩個(gè)數(shù)組的并集玻熙。寫出思路與實(shí)現(xiàn)代碼。
1疯攒、思路
2嗦随、實(shí)現(xiàn)代碼
11、寫一個(gè)計(jì)算器類敬尺,要求能夠計(jì)算兩個(gè)任意類型(整型枚尼、浮點(diǎn)型)參數(shù)的和。寫出思路與實(shí)現(xiàn)代碼砂吞。
1署恍、思路
2、實(shí)現(xiàn)代碼
12蜻直、定義一個(gè)點(diǎn)類(Point)和一個(gè)線類(Line)盯质,計(jì)算線的長(zhǎng)度。寫出思路與實(shí)現(xiàn)代碼概而。
1呼巷、思路
2、實(shí)現(xiàn)代碼
13赎瑰、定義一個(gè)接口王悍,提供開(kāi)和關(guān)兩個(gè)功能。定義一個(gè)手機(jī)類餐曼,使用該接口压储。寫出思路與實(shí)現(xiàn)代碼鲜漩。
1、思路
2渠脉、實(shí)現(xiàn)代碼
14宇整、寫一個(gè)方法,打印出指定目錄里面的目錄和文件的結(jié)構(gòu)芋膘。寫出思路與實(shí)現(xiàn)代碼。
// 可能使用到的 File 實(shí)例對(duì)象方法 isDirectory霸饲,getName为朋,getPath。
1厚脉、思路
2习寸、實(shí)現(xiàn)代碼
15、定義一個(gè) Login 類傻工,Scanner 輸入用戶名和密碼霞溪。如果用戶不存在,拋出用戶還未注冊(cè)的異常信息(使用自定義異常)中捆。如果用戶存在且密碼正確鸯匹,提示登錄成功,否則提示登錄失敗泄伪。寫出思路與實(shí)現(xiàn)代碼殴蓬。
1、思路
2蟋滴、實(shí)現(xiàn)代碼