劍指 Offer 22. 鏈表中倒數(shù)第k個(gè)節(jié)點(diǎn)
class Solution {
public ListNode getKthFromEnd(ListNode head, int k) {
// 統(tǒng)計(jì)長(zhǎng)度
ListNode nodeLen=head;
int len=0;
while(nodeLen!=null){
len++;
nodeLen=nodeLen.next;
}
len=len-k;
ListNode node=head;
while(len>0){
len--;
node=node.next;
}
return node;
}
}
劍指 Offer 18. 刪除鏈表的節(jié)點(diǎn)
找個(gè)節(jié)點(diǎn)當(dāng)作找到的節(jié)點(diǎn),然后
class Solution {
public ListNode deleteNode(ListNode head, int val) {
if(head.val==val){
return head.next;
}
ListNode node=head;
while(node!=null){
if(node.val==val){
break;
}
node=node.next;
}
ListNode root=head;
while(root!=null){
if(root.next.val==val){
root.next=node.next;
break;
}
root=root.next;
}
return head;
}
}