導航:首頁 > 編程語言 > 數組交集java

數組交集java

發布時間:2022-07-22 04:58:34

A. java程序,給定的兩個數組求交集,我知道用兩個 for循環可以得到這些數


publicclassIntersection{

publicstaticvoidmain(String[]args){
//給定兩個數組
int[]as={1,5,8,9,4,6};
int[]bs={5,7,3,2};

//記錄相同的元素(String類型方便下面判斷)
String[]cs=newString[as.length>bs.length?as.length:bs.length];//長度不超過上麥年量數組中最大長度

//循環比較
for(inti=0;i<as.length;i++){
intflag=0;//有相同元素標記
for(intj=0;j<bs.length;j++){
if(bs[j]==as[i]){
flag=flag+1;
}
}
intplace=0;//記錄cs數組已經有幾個元素
for(Stringj:cs){
place=0;
if(j!=null&&j!=""){
place=place+1;
}
}
if(flag!=0){
cs[place]=as[i]+"";
}
}

//循環輸出交集數組
for(Stringi:cs){
if(i!=null){
System.out.println(i);
}
}
}
}

B. java數組求交集

public class NumberTest {

public static void main(String[] args) {

int[] a = {1,3,4,5,6};
int[] b = {2,4,6,8,10};

for(int i=0;i<a.length;i++){

for(int j=0;j<b.length;j++){
if(a[i] == b[j]){
System.out.print(a[i] + " ");
}
}

}

}}輸出結果: 4,6

C. java 求三個數組的交集等於第四個數組

//求兩個數組的交集
public static String[] intersect(String[] arr1, String[] arr2) {
Map<String, Boolean> map = new HashMap<String, Boolean>();
LinkedList<String> list = new LinkedList<String>();
for (String str : arr1) {
if (!map.containsKey(str)) {
map.put(str, Boolean.FALSE);
}
}
for (String str : arr2) {
if (map.containsKey(str)) {
map.put(str, Boolean.TRUE);
}
}

for (Entry<String, Boolean> e : map.entrySet()) {
if (e.getValue().equals(Boolean.TRUE)) {
list.add(e.getKey());
}
}

String[] result = {};
return list.toArray(result);
}
兩次 求交集, 再用Arrays.equals比較是否相等

D. java 求三個數組的交集

其實可以參考一樓的。
// 求兩個數組的交集
public static void intersect(Double[] arr1, Double[] arr2, Double[] arr3) {
for (Double str : arr1) {
if(Arrays.asList(arr2).contains(str) && Arrays.asList(arr3).contains(str)){
System.out.println(str);
}
}
}

public static void main(String[] args) {
Double[] arrayA = new Double[]{1d,2d,3d,4d,5d};
Double[] arrayB = new Double[]{1d,2d,7d,8d,9d};
Double[] arrayC = new Double[]{1d,2d,3d,4d,9d};
intersect(arrayA, arrayB, arrayC);
}

E. 再問一下關於:java中兩個數組的交集怎麼求

交集不就是元素相同嗎,兩個for循環一個一個比較

F. java array1,array2,array3三個數組取交集

List<Object> list=new ArrayList<Object>();
for(Object o:array1){
if(Arrays.asList(array2).contains(o)&&Arrays.asList(array3).contains(o)){
list.add(o);
}
}
return list.toArray();

G. 在java中怎麼判斷一個數組包含另一個數組

雙循環,把數組中的每一個值都拿來做比較、判斷!!1

public static boolean containArray(int[] a, int[] b) {

boolean flag = false;

int k = 0;

/**

* 統計b中包含a中的元素是否與a的元素個數相同

*/

if (a.length < b.length) {

for (int i = 0; i < a.length; i++) {

for (int j = 0; j < b.length; j++) {

if (a[i] == b[j]) {

k++;

System.out.println(a[i] +"/"+ b[j]);

continue;

}

}

}

}

if (k == a.length) flag = true;

return flag;

}

H. Java如何找到兩個數組的交集

//方法有很多,說一個簡單點..
importjava.util.Arrays;
importjava.util.HashSet;
publicclassRetTest{
publicstaticvoidmain(String[]args){
HashSet<Integer>hs=newHashSet<Integer>();//set集合
int[]a={1,2,3,4,5},//兩個數組
b={0,3,4,5,6};
for(inti=0;i<a.length;i++){//外層
for(intj=0;j<b.length;j++){//內層
if(a[i]==b[j]){//如果一樣
hs.add(a[i]);//就裝集合
}
}
}
System.out.println("a:"+Arrays.toString(a));
System.out.println("b:"+Arrays.toString(b));
System.out.println("交集為:"+hs);
}
}

閱讀全文

與數組交集java相關的資料

熱點內容
程序員多數有對象 瀏覽:131
單片機延時程序計算 瀏覽:442
編譯原理語法翻譯 瀏覽:502
pr編譯出錯渲染存在偏移 瀏覽:260
如何製作自家的app 瀏覽:197
推薦一個解壓軟體rar解壓幫手 瀏覽:207
wd文檔加密器 瀏覽:745
伺服器上傳壓縮包一般是什麼格式 瀏覽:331
發送加密文件密碼幾位數 瀏覽:158
樹洞app怎麼樣 瀏覽:173
vivo編譯時間可以改么 瀏覽:149
編譯和編輯怎麼區分 瀏覽:979
iar編譯文件順序 瀏覽:898
java二叉搜索樹 瀏覽:633
王者怎麼看好友的伺服器 瀏覽:733
無線編碼單片機 瀏覽:464
天聯高級版域名伺服器地址 瀏覽:206
鴻蒙用什麼編譯 瀏覽:730
伺服器如何迅速擴容 瀏覽:792
伺服器無固定ip地址不 瀏覽:643