天天看點

leetcode刷題937-3

leetcode刷題937-3

感想:再明白題目意思後,我想對于學習過連結清單的程式員來說,不算太難

題目解析:删除連結清單中的某一個結點

做題邏輯:輸入的參數即是要删除的連結清單中的點,我們可以從linknode的資料結構中可以知道linknode包括node的值和下一個node的值,則我們可以linknode聲明建立nextnode,然後将nextnode的值指派給node,把nextnode的next位址也傳遞給node,即用nextnode覆寫node,進而實作再删除node而對連結清單的連接配接關系不造成影響的目的。

C語言與Java的比較:

在這道題中我的發現是c語言中的資料結構在java是用類來表示的

考查方向:連結清單

c語言:

void deleteNode(struct ListNode* node) {

    struct ListNode* nextnode=node->next;

    node->val=nextnode->val;

    node->next=nextnode->next;

}

java:

class Solution {

    public void deleteNode(ListNode node) {

        ListNode nextnode=node.next;

        node.val=nextnode.val;

        node.next=nextnode.next;

    }

}