From cc3510f9308c16b1efed802802e79c0f5d836491 Mon Sep 17 00:00:00 2001 From: zionbuch Date: Wed, 23 Oct 2024 15:08:32 +0000 Subject: [PATCH 1/3] feat: added Zion's GameResult and Stack Results to lesson_12 hw --- .../codedifferently/lesson12/Lesson12.java | 23 +++++++++++++++++++ .../com/codedifferently/lesson12/Stack.java | 12 ++++++---- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java index af7663e90..5978f5362 100644 --- a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java +++ b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java @@ -7,6 +7,29 @@ public class Lesson12 { * https://github.com/yang-su2000/Leetcode-algorithm-practice/tree/master/3062-winner-of-the-linked-list-game */ public String gameResult(ListNode head) { + ListNode current = head; + int even = 0; + int odd = 0; + while (current.next != null) { + ListNode nextNode = current.next; + if (current.val < nextNode.val) { + odd++; + } + if (current.val > nextNode.val) { + even++; + } + current = nextNode.next; + } + if (even > odd) { + return "Even"; + } + if (even < odd) { + return "Odd"; + } + + if (even == odd) { + return "Tie"; + } return null; } } diff --git a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java index 8444fceca..3bfd1c831 100644 --- a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java +++ b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java @@ -9,18 +9,22 @@ public Stack() { } public void push(int value) { - // Your code here + ListNode newNode = new ListNode(value); + newNode.next = top; + top = newNode; } public int pop() { - return 0; + int value = top.val; + top = top.next; + return value; } public int peek() { - return 0; + return top.val; } public boolean isEmpty() { - return true; + return top == null; } } From bfe27551ea50125027cefcf601f39cf27c79b840 Mon Sep 17 00:00:00 2001 From: zionbuch Date: Wed, 23 Oct 2024 15:25:41 +0000 Subject: [PATCH 2/3] feat: fixed bug in Zion's GameResult and Stack Results to lesson_12 hw --- .../src/main/java/com/codedifferently/lesson12/Lesson12.java | 3 +-- .../src/main/java/com/codedifferently/lesson12/Stack.java | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java index 5978f5362..8113e9356 100644 --- a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java +++ b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Lesson12.java @@ -10,7 +10,7 @@ public String gameResult(ListNode head) { ListNode current = head; int even = 0; int odd = 0; - while (current.next != null) { + while (current != null) { ListNode nextNode = current.next; if (current.val < nextNode.val) { odd++; @@ -26,7 +26,6 @@ public String gameResult(ListNode head) { if (even < odd) { return "Odd"; } - if (even == odd) { return "Tie"; } diff --git a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java index 3bfd1c831..f158803fc 100644 --- a/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java +++ b/lesson_12/structs_java/structs_app/src/main/java/com/codedifferently/lesson12/Stack.java @@ -28,3 +28,4 @@ public boolean isEmpty() { return top == null; } } +// I used chatgpt to walk me through the implementation without giving me the answers. From acc2df03a4ef93e963460be55e123533aa43e7f7 Mon Sep 17 00:00:00 2001 From: zionbuch Date: Thu, 24 Oct 2024 15:08:25 +0000 Subject: [PATCH 3/3] staged changes to lesson_12 --- lesson_12/structs_ts/src/lesson12.ts | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/lesson_12/structs_ts/src/lesson12.ts b/lesson_12/structs_ts/src/lesson12.ts index d4455564e..94d3281c3 100644 --- a/lesson_12/structs_ts/src/lesson12.ts +++ b/lesson_12/structs_ts/src/lesson12.ts @@ -6,6 +6,28 @@ export class Lesson12 { * https://github.com/yang-su2000/Leetcode-algorithm-practice/tree/master/3062-winner-of-the-linked-list-game */ public gameResult(head: ListNode | null): string { - return ''; + let ListNode, current = head; + let even = 0; + let odd = 0; + while (current != null && current.next != null) { + let next: ListNode | null = null; + if (head === null) { + odd++; + } + if (current.val > nextNode.val) { + even++; + } + current === nextNode.next; + } + if (even > odd) { + return "Even"; + } + if (even < odd) { + return "Odd"; + } + if (even === odd) { + return "Tie"; + } + return null; } }