From ce5031f8028887c168e62217caea47969f6a1914 Mon Sep 17 00:00:00 2001 From: Lanre Adedara Date: Fri, 7 Jun 2024 07:30:03 +0100 Subject: [PATCH] feat: add swift implementation to lcof2 problem: No.046 --- .../README.md" | 50 +++++++++++++++++++ .../Solution.swift" | 45 +++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 "lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/Solution.swift" diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/README.md" "b/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/README.md" index e1b1246dd0e50..217779e386261 100644 --- "a/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/README.md" +++ "b/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/README.md" @@ -200,6 +200,56 @@ func rightSideView(root *TreeNode) []int { } ``` +#### Swift + +```swift +/* class TreeNode { +* var val: Int +* var left: TreeNode? +* var right: TreeNode? +* init() { +* self.val = 0 +* self.left = nil +* self.right = nil +* } +* init(_ val: Int) { +* self.val = val +* self.left = nil +* self.right = nil +* } +* init(_ val: Int, _ left: TreeNode?, _ right: TreeNode?) { +* self.val = val +* self.left = left +* self.right = right +* } +* } +*/ + +class Solution { + func rightSideView(_ root: TreeNode?) -> [Int] { + var ans = [Int]() + guard let root = root else { + return ans + } + var q = [TreeNode]() + q.append(root) + while !q.isEmpty { + ans.append(q[0].val) + for _ in 0.. diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/Solution.swift" "b/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/Solution.swift" new file mode 100644 index 0000000000000..656b505894084 --- /dev/null +++ "b/lcof2/\345\211\221\346\214\207 Offer II 046. \344\272\214\345\217\211\346\240\221\347\232\204\345\217\263\344\276\247\350\247\206\345\233\276/Solution.swift" @@ -0,0 +1,45 @@ +/* class TreeNode { +* var val: Int +* var left: TreeNode? +* var right: TreeNode? +* init() { +* self.val = 0 +* self.left = nil +* self.right = nil +* } +* init(_ val: Int) { +* self.val = val +* self.left = nil +* self.right = nil +* } +* init(_ val: Int, _ left: TreeNode?, _ right: TreeNode?) { +* self.val = val +* self.left = left +* self.right = right +* } +* } +*/ + +class Solution { + func rightSideView(_ root: TreeNode?) -> [Int] { + var ans = [Int]() + guard let root = root else { + return ans + } + var q = [TreeNode]() + q.append(root) + while !q.isEmpty { + ans.append(q[0].val) + for _ in 0..