質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ソート

複数のデータを、順序性に従って並べ替えること。 データ処理を行う際に頻繁に用いられ、多くのアルゴリズムが存在します。速度、容量、複雑さなどに違いがあり、高速性に特化したものにクイックソートがあります。

Q&A

解決済

1回答

1195閲覧

選択ソートを作成したいです。

koko355

総合スコア13

ソート

複数のデータを、順序性に従って並べ替えること。 データ処理を行う際に頻繁に用いられ、多くのアルゴリズムが存在します。速度、容量、複雑さなどに違いがあり、高速性に特化したものにクイックソートがあります。

0グッド

0クリップ

投稿2018/10/02 05:25

編集2018/10/02 06:06

前提・実現したいこと

発生している問題・エラーメッセージ

eclipseを使用して,選択ソートのを作成したいです。 またoutputを書きたい

該当のソースコード

ソースコード package ex3; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Scanner; public class SelectionSort { private final int n = 50000; private int[] array = new int[n]; public SelectionSort(String filename) { // ここを作る // ファイル名を引数とする // ファイルを開いて全て読み込んで配列arrayに入れる try { BufferedReader br = new BufferedReader(new FileReader(filename)); String line; while((line = br.readLine()) != null){ line = br.readLine(); } } catch (FileNotFoundException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } catch (IOException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } System.out.println(array); } public void sort() { // ここを作る // ソートを実装する // 配列arrayの中身をソートする for (int i = 0; i < array.length; i++) { int min = i; for (int j = i + 1; j < array.length; j++) if(array[j] < array[min]) min = j; } if(i != min) { int tmp = array[min]; array[min] = array[i]; array[i] = tmp; } } public void output(String filename) { // ここを作る // ファイル名を引数とする // 配列arrayをファイルに出力する // 1行に1レコード } public static void main(String[] args) { String file1 = "rand2.txt"; String file2 = "result_ex3-2_rand2.txt"; SelectionSort ss = new SelectionSort(file1); ss.sort(); ss.output(file2); } }

補足情報(FW/ツールのバージョンなど)

eclipseを使用しています。
よろしくお願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2018/10/02 05:26

ソースコードは<code>ボタンで、’’’の枠の中に貼り付けてください
dice142

2018/10/02 05:31

選択ソートクラスは既に作成されているようですが、挿入ソートクラスの作成がわからないという質問でしょうか?
y_waiwai

2018/10/02 05:32

しつもんはなんでしょうか
koko355

2018/10/02 05:35

すみません、挿入ソートクラスの作成がわからない、 public void sort() 中身の書き方を質問したいです
dice142

2018/10/02 05:38

質問文およびタイトルをそのようにわかるように修正してください。また、あなたがどのくらい分かるのか不明なので、選択ソートのアルゴリズムをどれだけ理解しているかも記載していただきたいです。
koko355

2018/10/02 05:46

ありがとうございます
dice142

2018/10/02 05:49

タイトル含め、質問を見返してください。日本語がおかしいところがありますし、タイトルと質問文で要件が異なっています。
dice142

2018/10/02 05:59

何度も申し訳ないのですが、アルゴリズムがわからないのかJavaの書き方がわからないのかどちらでしょう?全体はJavaなのにC#のコードが入っててわけがわかりません。
退会済みユーザー

退会済みユーザー

2018/10/02 06:33

わからないなりに頑張ったけどよくわからない、丸投げ、部分投げしたいという気持ちはよくわかりますがやめましょう。いったんプログラミングは忘れて、単語帳か何かを使って手元でソートを行い、仕組みが理解できてからプログラミングにとりかかりましょう。
guest

回答1

0

ベストアンサー

学校の課題っぽいのと、質問範囲が広い気がするのでアドバイスのみに留めておきます。
(作成の仕方がわからない→コンパイルエラーがでるから作成できない な気がします)

質問の意図は明確に

選択ソートの作成がしたいです

私はこの言葉から「意図した動作をしない、意図した結果にならない」を想定しましたが、
そもそものコードがコンパイルエラーだったので、
コンパイルエラーがわからない
が質問の本質ではないでしょうか?

選択ソートについて

だいたいやりたいことは合ってると思います。
入れ替え処理の場所が良くないので見直しましょう。
iffor{ }で括った方がわかりやすいです。)

出力部分に関して

ひとまずファイルに出力する処理は置いておきましょう。
ファイル出力はいろいろ処理が多いので、標準出力に出力してみて
ソートができているようであればファイル出力の処理に書き換えましょう。

投稿2018/10/02 06:45

dice142

総合スコア5158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問