輸出陣列中不重複,或者輸出特定次數的陣列

2021-10-24 13:17:31 字數 1359 閱讀 4122

隨機生成1000個1~100之內的整數,統計出不重複的數值和其重複的次數

random rand =

newrandom()

;int

arr =

newint

[1000];

int[

]unique =

newint

[100];

int[

]count =

newint

[100];

int k =0;

unique[k]

=rand.

nextint

(100)+

1;arr[0]

=unique[k]

; count[k++]=

1;for(

int i=

0,j; i < arr.length; i++)}

if(j==k)

else

}

隨機生成100個,取值1~50之間的整數,任何單值重複不超過兩次,輸出其陣列

random rand =

newrandom()

;final

int n=

100;

int[

] arr=

newint

[n];

//重複不超過兩次的陣列

int ix =0;

//uqarr陣列中已存入的元素個數

int[

] uqarr =

newint

[n];

//用於存放不重複值的陣列

int[

] uqcnt =

newint

[n];

//用於計uqarr陣列每個元素的重複個數

for(

int i =

0,t,tx; i < arr.length;)}

if(tx!=-1

&&uqcnt[tx]

>=2)

continue

;//若生成的數t和uqarr陣列有重複且重複的次數超過兩次,則再重新生成t,判斷是否重複

//有兩種情況才會執行到以下步驟:1:隨機數t跟所有uqarr[j]不同,for迴圈,j++遍歷整個陣列,直到jarr[i++

]=t;

//則把t賦值給arr[i],且i++;

if(tx==-1

)else

}for

(int i =

0; i < ix; i++

)int cnt =0;

for(

int i : arr)

}

今天的輸出不重複數

int a 10 bool ifcx 10 用於判斷數字是否出現過 int n 10 int ku new int n 用於存放出現過的數字 for int i 0 i 10 i 第一條給陣列變數賦值,第二條可不寫 全域性中的bool陣列變數初始為false for int i 0 ifor int...

輸出最長不重複子串

遇到過好幾次這種類似的題了,只記得第一次是在阿里巴巴的筆試題中遇到的。想了好久好久才想出來,下次再讓我寫我覺得我又寫不出來了。package test public class strtest else if flag 如果找到了當前最大的串,那麼應該先暫時把它記錄下來,然後繼續向之後找最大的串,和...

1245 不重複地輸出數(set)

輸入n個數,從小到大將它們輸出,重複的數隻輸出一次。保證不同的數不超過500個。第一行是乙個整數n。1 n 100000。之後n行,每行乙個整數。整數大小在int範圍內。一行,從小到大不重複地輸出這些數,相鄰兩個數之間用單個空格隔開。5 2 4 4 5 1 1 2 4 5 include inclu...