私はファイルから浮動小数点整数の束を読んでサブセットにソートする必要があるプロジェクトに取り組んでいます。サブセットは、その距離だけ離れてソートされる必要があります。私は最初にファイルから最初の要素を引き出し、それを距離比較として使用する必要があります。次に、次の要素aをとり、それを別のリストに入れて比較し、3番目の要素bを読み込み、aと比較します。 bはaから少なくともd離れている必要があります。そうであればaでサブセットに入れられます。それからbはaと等しくなり、最後まで下に移動してそれらの集合を作ると、それ以上要素がなくなるまで最初からやり直すことになります。ファイルから読み込んでサブセットにソートする
私は配列リストを使ってこれをしようとしていますが、これまでのところファイルを読み込んで配列リストに入れて並べ替えています。私は、最初の要素を引き出してから比較することに助けが必要です。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;
import java.util.Collections;
public class FloatFromFile
{
public static void main(String[] args)
{
Scanner file = null;
ArrayList<Float> list = new ArrayList<Float>();
try
{
file = new Scanner(new File("test.txt"));
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
while(file.hasNext())
{
if (file.hasNextFloat()) list.add(file.nextFloat());
else file.next();
}
// display unsorted list
System.err.print("Origional List is:\n");
for (Float i: list) System.out.println(i);
Collections.sort(list);
// display sorted list
System.err.print("Sorted List is:\n");
for (Float i: list) System.out.println(i);
ArrayList<Float> sorted = new ArrayList<Float>();
while (file.hasNext())
{
Float val = file.nextFloat();
int i = sorted.size();
float temp = sorted.get(i-1);
while (i > 0 && temp > val)
{
i--;
temp = sorted.get(i-1);
}
sorted.insert(i, val);
}
for (Float i: sorted) System.out.println(i);
}
}
は、私は新しい方法で追加しましたが、私はまだ私がFloatFromFile.java:50エラー
を取得しています を動作するようになって問題があります:エラー:シンボルに sorted.insertを見つけることができません( i、val); ^ シンボル:メソッド(int型、フロート)を挿入 場所:変数の型のArrayListのソート 1エラー
これは宿題ですか? –
浮動小数点整数とは何ですか? – Thom
申し訳ありません浮動小数点 – Drew