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..f7f997d53 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,23 @@ 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) { - return null; + ListNode current = head; + int evenPoints = 0; + int oddPoints = 0; + while (current != null) { + if (current.val > current.next.val) { + evenPoints++; + } else if (current.val < current.next.val) { + oddPoints++; + } + current = current.next.next; + } + if (evenPoints > oddPoints) { + return "Even"; + } else if (oddPoints > evenPoints) { + return "Odd"; + } else { + 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 8444fceca..6ed16d899 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,25 @@ public Stack() { } public void push(int value) { - // Your code here + ListNode first = new ListNode(value); + first.next = top; + top = first; } public int pop() { - return 0; + if (isEmpty()) { + return -1; + } + 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; } } diff --git a/lesson_12/structs_ts/src/lesson12.ts b/lesson_12/structs_ts/src/lesson12.ts index d4455564e..55d6c05c2 100644 --- a/lesson_12/structs_ts/src/lesson12.ts +++ b/lesson_12/structs_ts/src/lesson12.ts @@ -6,6 +6,23 @@ 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 current: ListNode| null = head; + let evenPoints = 0; + let oddPoints = 0; + while (current !== null && current.next != null) { + if (current.val > current.next.val) { + evenPoints++; + } else if (current.val < current.next.val) { + oddPoints++; + } + current =current.next.next != undefined? current.next.next : null; + } + if (evenPoints > oddPoints) { + return 'Even'; + } else if (oddPoints > evenPoints) { + return 'Odd'; + } else { + return 'Tie'; + } } }