2 つのループを使用せずに配列内のアイテムの頻度をカウントする方法があることを知る必要があります。これは、配列のサイズを知らずに行われます。配列のサイズがわかっている場合は、ループせずにスイッチを使用できます。しかし、それよりも汎用性が必要です。クイックソートを変更すると、より良い結果が得られると思います。
Array[n];
TwoDArray[n][2];
最初のループは Array[] に進み、2 番目のループは要素を見つけて 2 次元配列でカウントを増やします。
max = 0;
for(int i=0;i<Array.length;i++){
found= false;
for(int j=0;j<TwoDArray[max].length;j++){
if(TwoDArray[j][0]==Array[i]){
TwoDArray[j][1]+=;
found = true;
break;
}
}
if(found==false){
TwoDArray[max+1][0]=Array[i];
TwoDArray[max+1][1]=1;
max+=;
}
コメントしたり、より良い解決策を提供したりできれば、非常に役に立ちます。