黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java數組編程練習題,每日練習

Java數組編程練習題,每日練習

更新時間:2020-08-24 16:59:37 來源:動力節點 瀏覽2096次

1. 有一個已經排好序的數組?,F輸入一個數,要求按原來的規律將它插入數組中。

分析思路:

先通過Random類隨機創建一個數組,再調用Arrays類中的排序方法sort排好序,然后再開始實現功能。

按原來的規律插入數組,很簡單,只要找到合適的插入位置n,然后將n之前的數組元素直接復制到新數組的對應位置,n處插入輸入的數字,n之后的元素后移一格再移到新數組就完成了。

最關鍵的就是要找到合適的插入位置。而查找算法顯然二分查找為優。這里我投了個懶,直接使用Arrays類中的二分查找方法binarySearch()來查找輸入的num,若數組中存在和num一樣的數,則該方法的返回值即為該數的下標位置,那么插入位置n就是這個返回值;而如果數組中不存在num,則該方法能夠返回一個負數,num比數組第一個元素還小則為-1,此時插入位置應該為0,大于第一個元素小于第二個元素為-2,此時插入位置應為1,以此類推。。。那么顯然插入位置應該為返回值取絕對值再減一。

找到位置實現就簡單啦。具體代碼如下:

import?java.util.Arrays;
import?java.util.Random;
import?java.util.Scanner;
/**
?*?有一個已經排好序的數組?,F輸入一個數,要求按原來的規律將它插入數組中。
?*
?*?@author?ChenZX
?*
?*/
public?class?Test03?{

????public?static?void?main(String[]?args)?{
????????Random?r?=?new?Random();
????????int[]?arr?=?new?int[10];
????????for(int?i=0;i<10;i++){????//隨機生成數組
????????????arr[i]=?r.nextInt(100);
????????}
????????System.out.println(Arrays.toString(arr));
????????Arrays.sort(arr);???//排序
????????System.out.println(Arrays.toString(arr));

????????Scanner?s?=?new?Scanner(System.in);
????????System.out.println("請輸入一個數:");
????????int?num?=?s.nextInt();
????????s.close();
????????int?bs?=Arrays.binarySearch(arr,?num);?//二分查找的結果存入bs
????????int?n?=?0;?//插入位置
????????if(bs<0){?????????????//查找失敗,則插入位置為bs的絕對值-1
????????????n?=?Math.abs(bs)-1;
????????}else{????????//查找成功,則插入位置即bs
????????????n?=?bs;
????????}
????????System.out.println(bs);

????????int[]?arr2?=?new?int[arr.length+1];?//建立一個新數組,長度為原數組長度+1
????????for(int?i=0;i

2. 求一個3*3矩陣對角線元素之和

分析思路:

這是一道矩陣的編程實現題。Java中矩陣一般都是通過二維數組實現的。

具體代碼如下:

import?java.util.Random;

/**
?*?求一個3*3矩陣對角線元素之和
?*
?*?@author?ChenZX
?*
?*/
public?class?Test04?{

????public?static?void?main(String[]?args)?{
????????int?sum?=?0;?//和
????????int[][]?arr?=?new?int[3][3];
????????Random?r?=?new?Random();
????????for(int?i=0;i<3;i++){????//隨機生成矩陣
????????????for(int?j=0;j<3;j++){
????????????????arr[i][j]?=?r.nextInt(10);??//0到9
????????????}
????????}
????????for(int?i=0;i<3;i++){??????//遍歷矩陣
????????????for(int?j=0;j<3;j++){
????????????????System.out.print(arr[i][j]+"?");???//打印矩陣元素
????????????????if(i==j){???//如果為對角線元素
????????????????????sum?+=?arr[i][j];??//求和
????????????????}
????????????}
????????????System.out.println();?//每輸出3個元素換行
????????}
????????System.out.println("此矩陣對角線的和為:"+sum);
????}
}

以上就是動力節點java培訓機構的小編針對“Java數組編程練習題,每日練習”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 成人在线免费视频 | 欧美日韩精品在线视频 | 成人免费v片在线观看 | 亚洲三级在线免费观看 | 亚洲综合在线另类色区奇米 | 国产午夜毛片一区二区三区 | 精品欧美成人bd高清在线观看 | 午夜tv| 国产精品视频一区二区三区不卡 | 男女www视频在线看网站 | 韩国三级日本三级在线观看 | 亚洲免费视频在线观看 | 国产一区中文字幕在线观看 | 欧美 日韩 国产 在线 | 日本妇人成熟免费观看18 | 羞羞视频在线免费观看 | 黄色免费看视频 | 日韩天天摸天天澡天天爽视频 | 一级高清毛片 | 久久久久国产精品免费免费 | 妇乱子伦激情 | 亚洲欧美在线播放 | 日本中文字幕在线观看视频 | 黄视频在线观看www免费 | 六月丁香激情综合成人 | 外国xxx| 日韩一区在线视频 | 香港美女一级毛片 视频 | 成人高辣h视频一区二区在线观看 | 国产成人精品cao在线 | 午夜成年人视频 | 操你啦在线视频 | 日韩一本| 色网站视频| 26uuu欧美日韩国产 | 男女乱淫真视频免费一级毛片 | 两性色午夜视频免费播放 | 91国内精品久久久久怡红院 | 九九热亚洲精品综合视频 | 国产精品久久女同磨豆腐 | 婷婷网五月天天综合天天爱 |