teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

修正

2017/09/24 14:09

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -30,7 +30,7 @@
30
30
  ---
31
31
  『それ、出来ないよ』で片づけてしまうのもなんとも申し訳ないので、一つの解法を示します。
32
32
  ```Java
33
- int[] workCountTable = new int[countTable.length];
33
+ int[] workCountTable = new int[countTable.length()];
34
34
  deepCopy(countTable, workCountTable);
35
35
 
36
36
  for(int i = 0; i < 10; i++) {
@@ -44,7 +44,7 @@
44
44
  }
45
45
  ```
46
46
 
47
- 未検証です。`getArgMax`はご自身で実装してみてください。
47
+ 未検証です。`deepCopy` `getArgMax`はご自身で実装してみてください。
48
48
 
49
49
  重要
50
50
  ---

3

追記

2017/09/24 14:09

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -26,7 +26,28 @@
26
26
  確かに上位10位までの出現頻度は表示できるかもしれません。
27
27
  ただし、実際の上位の文字はわからないままです。
28
28
 
29
+ 追記
29
30
  ---
31
+ 『それ、出来ないよ』で片づけてしまうのもなんとも申し訳ないので、一つの解法を示します。
32
+ ```Java
33
+ int[] workCountTable = new int[countTable.length];
34
+ deepCopy(countTable, workCountTable);
35
+
36
+ for(int i = 0; i < 10; i++) {
37
+ int argMax = getArgMax(workCountTable);
38
+ int max = workCountTable[argMax];
39
+
40
+ if(max == 0) break;
41
+
42
+ System.out.println("第" + (i+1) + "位: " + char(argMax) + ": " + max + "回");
43
+ workCountTable[argMax] = 0;
44
+ }
45
+ ```
46
+
47
+ 未検証です。`getArgMax`はご自身で実装してみてください。
48
+
49
+ 重要
50
+ ---
30
51
  teratailには、コードを見やすく表示する機能があります。
31
52
  質問の編集画面を開き、コードを選択した状態で<code>ボタンを押してください。
32
53
  右側にプレビューが表示されるので、それを参照して見やすい質問を心掛けてください。

2

追記

2017/09/24 14:09

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -21,6 +21,12 @@
21
21
  あとあれですね、バブルソートはメソッドとして切り出した方がいいです。
22
22
 
23
23
  ---
24
+ よく考えたら、この方針は無理がありそうです。
25
+ 配列の添え字にアルファベットを当てはめているのですから、ソートするとその情報が消えます。
26
+ 確かに上位10位までの出現頻度は表示できるかもしれません。
27
+ ただし、実際の上位の文字はわからないままです。
28
+
29
+ ---
24
30
  teratailには、コードを見やすく表示する機能があります。
25
31
  質問の編集画面を開き、コードを選択した状態で<code>ボタンを押してください。
26
32
  右側にプレビューが表示されるので、それを参照して見やすい質問を心掛けてください。

1

追記

2017/09/24 12:37

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -18,4 +18,9 @@
18
18
  なんでここで`s`を参照しようとする必要があるのでしょう。
19
19
  入力した文字列を一時的に保管しているだけで、統計データは`countTable`にあるのでは?
20
20
 
21
- あとあれですね、バブルソートはメソッドとして切り出した方がいいです。
21
+ あとあれですね、バブルソートはメソッドとして切り出した方がいいです。
22
+
23
+ ---
24
+ teratailには、コードを見やすく表示する機能があります。
25
+ 質問の編集画面を開き、コードを選択した状態で<code>ボタンを押してください。
26
+ 右側にプレビューが表示されるので、それを参照して見やすい質問を心掛けてください。