determineTheChange(diff) {
        var listOfChanges = [];
        if (diff.hasOwnProperty('linkedListForStep')) { //this means there is a change in the linked lists
            if (diff.linkedListForStep.hasOwnProperty('size')) { //change in the list size means that a node added or deleted
                listOfChanges.push(diff.linkedListForStep.size);
            }
            if (diff.linkedListForStep.hasOwnProperty('node')) { //change in nodes
                listOfChanges.push(diff.linkedListForStep.node);
            }
        }
        if (diff.hasOwnProperty('pointerForStep')) { //this means there is a change in the pointers
            if (diff.pointerForStep.hasOwnProperty('size')) { //change in the number of pointers, means add new pointer or remove a pointer
                listOfChanges.push(diff.pointerForStep.size);
            }
            if (diff.pointerForStep.hasOwnProperty('pointer')) { //change in pointer it self, change its name, location, ...
                listOfChanges.push(diff.pointerForStep.pointer);
            }

        }
        return listOfChanges;
    }
/**
     * use the diff to identify the changes. The changes are in the form of Json object string
     */
use the diff to identify the changes. The changes are in the form of Json object string
use the diff to identify the changes . The changes are in the form of Json object string
determineTheChange(diff) {
        var listOfChanges = [];
        if (diff.hasOwnProperty('linkedListForStep')) { 
            if (diff.linkedListForStep.hasOwnProperty('size')) { 
                listOfChanges.push(diff.linkedListForStep.size);
            }
            if (diff.linkedListForStep.hasOwnProperty('node')) { 
                listOfChanges.push(diff.linkedListForStep.node);
            }
        }
        if (diff.hasOwnProperty('pointerForStep')) { 
            if (diff.pointerForStep.hasOwnProperty('size')) { 
                listOfChanges.push(diff.pointerForStep.size);
            }
            if (diff.pointerForStep.hasOwnProperty('pointer')) { 
                listOfChanges.push(diff.pointerForStep.pointer);
            }
        }
        return listOfChanges;
    }
determineTheChange ( diff ) { var listOfChanges = [ ] ; if ( diff . hasOwnProperty ( 'linkedListForStep' ) ) { if ( diff . linkedListForStep . hasOwnProperty ( 'size' ) ) { listOfChanges . push ( diff . linkedListForStep . size ) ; } if ( diff . linkedListForStep . hasOwnProperty ( 'node' ) ) { listOfChanges . push ( diff . linkedListForStep . node ) ; } } if ( diff . hasOwnProperty ( 'pointerForStep' ) ) { if ( diff . pointerForStep . hasOwnProperty ( 'size' ) ) { listOfChanges . push ( diff . pointerForStep . size ) ; } if ( diff . pointerForStep . hasOwnProperty ( 'pointer' ) ) { listOfChanges . push ( diff . pointerForStep . pointer ) ; } } return listOfChanges ; }
use the diff to identify the changes.
use the diff to identify the changes .
//this means there is a change in the linked lists //change in the list size means that a node added or deleted //change in nodes //this means there is a change in the pointers //change in the number of pointers, means add new pointer or remove a pointer //change in pointer it self, change its name, location, ...