リンクリスト全体がstutteredの場合はtrue、そうでない場合はfalseを返すコードを記述しています。突き刺さったリストは1,1,2,2,5,5,8,8
で、突き返されないものは1,1,2,2,5,6,8,8
のようなものになります。LinkList、double値のチェック
私はかなり長い間それを試してきましたが、正しい文を返すか、nullpointer例外を取得できないようです。
public boolean foo(){
ListNode current = front;
ListNode runner = current.next;
while (current.next.next!=null){ //Looks two ahead for the end
if(current.data!=runner.data){ //They aren't equal, false
System.out.println(current.data); //just to see my data
System.out.println(runner.data); //debugging only
return false;
}
current = current.next.next; //increase by 2
runner = runner.next.next; // increase by 2
System.out.println(current.data + " ||" + runner.data); //again debugging
}
return true; // didn't register false, go ahead and true dat badboy.
}
public static void main (String[] args){
LinkedIntList list = new LinkedIntList();
list.add(1);
list.add(1);
list.add(3);
list.add(3);
list.add(5);
list.add(5);
System.out.println(list.foo());
}
誰かが明らかなエラーを見ていますか?私はcurrent.nextのwhileループを実行しようとしましたが、2回ではなく1回ずつランナーと電流を増加させましたが、どれもうまくいきませんでした。
:すべての項目の以上は、そのアルゴリズムを少し変更ですか?あなたはそれを完璧にする必要がありますfooの上のメソッドを呼び出すことができますか? – baseballlover723