From 56888b8b686ef79a1e02557ea665ffad08dbec34 Mon Sep 17 00:00:00 2001 From: Lanre Adedara Date: Mon, 3 Jun 2024 07:52:00 +0100 Subject: [PATCH 1/2] Swift implementation for LCOF2 024 --- .../README.md" | 32 +++++++++++++++++++ .../Solution.swift" | 27 ++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 "lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/Solution.swift" diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" "b/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" index 8966bcff5d8cb..ded748b5a78a6 100644 --- "a/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" +++ "b/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" @@ -219,6 +219,38 @@ public class Solution { } ``` +#### Swift + +```swift +/** + * Definition for singly-linked list. + * public class ListNode { + * public var val: Int + * public var next: ListNode? + * public init(_ val: Int) { + * self.val = val + * self.next = nil + * } + * } + */ + + class Solution { + func reverseList(_ head: ListNode?) -> ListNode? { + var prev: ListNode? = nil + var current = head + + while current != nil { + let next = current?.next + current?.next = prev + prev = current + current = next + } + + return prev + } +} +``` + diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/Solution.swift" "b/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/Solution.swift" new file mode 100644 index 0000000000000..9949264a69aaa --- /dev/null +++ "b/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/Solution.swift" @@ -0,0 +1,27 @@ +/** + * Definition for singly-linked list. + * public class ListNode { + * public var val: Int + * public var next: ListNode? + * public init(_ val: Int) { + * self.val = val + * self.next = nil + * } + * } + */ + + class Solution { + func reverseList(_ head: ListNode?) -> ListNode? { + var prev: ListNode? = nil + var current = head + + while current != nil { + let next = current?.next + current?.next = prev + prev = current + current = next + } + + return prev + } +} \ No newline at end of file From 99adabd415f29427b6472f5241601a0fba24facb Mon Sep 17 00:00:00 2001 From: klever34 Date: Mon, 3 Jun 2024 06:55:40 +0000 Subject: [PATCH 2/2] style: format code and docs with prettier --- .../README.md" | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" "b/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" index ded748b5a78a6..bfef5b37a8052 100644 --- "a/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" +++ "b/lcof2/\345\211\221\346\214\207 Offer II 024. \345\217\215\350\275\254\351\223\276\350\241\250/README.md" @@ -238,14 +238,14 @@ public class Solution { func reverseList(_ head: ListNode?) -> ListNode? { var prev: ListNode? = nil var current = head - + while current != nil { let next = current?.next current?.next = prev prev = current current = next } - + return prev } }