3

リンク リストがあり、2 つのノード先を見られるようにしたいと考えています。最初の 2 つのノードに整数があるかどうかを確認する必要があります。整数がある場合、3 番目のノードが ADD と表示されている場合は、その情報を 1 つのノードに凝縮し、他の 2 つのノードを解放する必要があります。

while ループに何を入れるべきか混乱しています。3 番目のノードが null を指しているかどうかを確認しましたが、どういうわけか正しい出力が得られません。node.next を正しく処理しているかどうかもわかりません。これの一部は現在、疑似コードです。

while(node1.next.next.next != NULL){
    if((node1.data.isInteger() && (node2.data.isInteger()){
        if(node3.data.equals('add')){
            node1.data = node1.data + node2.data;
        } else {
            //ERROR
        }
        garbage_ptr1 = node2;
        garbage_ptr2 = node3;
        node1.next = node3.next;
        free(garbage_ptr1);
        free(garbage_ptr2);
        node2.next = node1.next.next;
        node3.next = node2.next.next;
   } else {
        node1.next = node1.next.next;
        node2.next = node1.next.next;
        node3.next = node2.next.next;
   }
4

1 に答える 1