您的位置:首页 > 其它

删除某一个节点k的方法(1320 P103)

2017-08-12 22:18 218 查看
public class Example1320 {
/*
删除第k个元素的思路:就是循环k次,找到第k个元素,并知道k-1个元素,将k+1个元素传给第k-1
个元素,跳过第k个元素

同时需要考虑k的情况
*/

private class Node{
int item;
Node next;
}

private Node
first;

private void
deleteNodeOfNumber(int k){

if (k <= 0)
return;
if (k == 1) {
first = first.next;
return;
}

Node current = first;

Node next = current.next;

for (int i =
0; i < k -
1; i ++){ //这里是k > 1的情况
current = next;
next = current.next;
}

//执行完循环之后,current 为k-1的值,next 为k的值,这个时候只要使得next指向第k+1的只就可以了.
next = next.next;
current.next = next;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 链表
相关文章推荐