1、删除操作removeAt需要判断索引边界和具体添加位置。
2、若要删除的节点是链表的头部,只需将head移动到下一个节点即可。如果目前链表只有一个节点,那么下一个节点是null。
将head指向下一个节点相当于将head设置为null,删除后链表为空。若要删除的节点在链表的中间部分,则需要找出position所在位置的前一个节点,并将其next指针指向position所在位置的下一个节点。
实例
removeAt (position) { // position不能超出边界值 if (position < 0 || position >= this.length) return null; let current = this.head; if (position === 0) { this.head = current.next; }else { let previous = this.find(position - 1); current = previous.next; previous.next = current.next; } //删除之后将链表长度减1 this.length--; return current.element; }
以上就是js中removeat删除节点的方法,希望对大家有所帮助。更多js学习指路:
推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。