掌握JS中removeAt删除节点的核心技巧
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电脑。
|