leetcode 24 兩兩交換鍊錶中的節點

2021-09-11 11:07:35 字數 573 閱讀 5864

給定乙個鍊錶,兩兩交換其中相鄰的節點,並返回交換後的鍊錶。示例:

給定 1->2->3->4, 你應該返回 2->1->4->3.

複製**

說明:

// listnode definition for singly-linked list.

type listnode struct

func

(head *listnode) *listnode

var prev *listnode

cur := head

head = cur.next

for ; cur != nil && cur.next != nil; cur = cur.next

//交換兩個節點

cur.next, next.next, prev = next.next, cur, cur

} return head

}複製**

題目**

leetcode 24. 兩兩交換鍊錶中的節點

LeetCode 24兩兩交換鍊錶的節點

給定乙個鍊錶,兩兩交換其中相鄰的節點,並返回交換後的鍊錶。你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。示例 給定 1 2 3 4,你應該返回 2 1 4 3.class solution listnode next head.next head.next next.next 指向下...

leetcode24 兩兩交換鍊錶中的節點

給定乙個鍊錶,兩兩交換其中相鄰的節點,並返回交換後的鍊錶。示例 給定 1 2 3 4,你應該返回 2 1 4 3.說明 你的演算法只能使用常數的額外空間。你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。注意while裡tmp1和tmp2已經交換了,所以node tmp1 definit...

LeetCode24 兩兩交換鍊錶中的節點

給定乙個鍊錶,兩兩交換其中相鄰的節點,並返回交換後的鍊錶。你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。示例 給定 1 2 3 4,你應該返回 2 1 4 3.建立乙個額外的節點來儲存下乙個節點所指向的節點,這樣就不會丟失節點 易錯點1 直接使用頭結點 return head nex...