删除倒数第K个节点

ListNode* getKthFromEnd(ListNode* head, int k) {
        ListNode* fast=head;
        ListNode* slow=head;
        //因为头结点开始 所以要从1开始
        for(int i=1;i<k;i++){
            fast=fast->next;
            //倒数节点超过节点数
            if(fast == NULL){
                return NULL;
            }
        }
        //当fast到尾结点
        while(fast->next!=NULL){
            fast=fast->next;
            slow=slow->next;
        }
        return slow;
    }
posted @ 2022-10-06 11:45  lwx_R  阅读(18)  评论(0)    收藏  举报