โ๏ธ ๋ฌธ์
Given the head of a singly linked list, return the middle node of the linked list.
If there are two middle nodes, return the second middle node.
๐ค ์๊ณ ๋ฆฌ์ฆ
#๋งํฌ๋๋ฆฌ์คํธ #ํฌํฌ์ธํฐ
๐คฏ ํ์ด ๋ฐฉ๋ฒ
์ฃผ์ด์ง ๋ฆฌ์คํธ์ ์ ์ฒด ๊ธธ์ด๋ฅผ ๊ตฌํ๊ณ ์ ๋ฐ๊น์ง ๋๋ฌํ ๋๊น์ง next๋ก ์ด๋ํ๋ ๋ฐฉ์์ผ๋ก ํ์๋ค.
๋ฉ๋ชจ๋ฆฌ ํจ์จ์ด ์ข์ง ์์์ ํ์ธํด๋ณด๋ ํฌํฌ์ธํฐ๋ฅผ ์ด์ฉํด์ ๋ณต์ฌํด์ ๊ธธ์ด๋ฅผ ๊ตฌํ ํ์ ์์ด
์ธ๋ฑ์ค๋ง ์ด์ฉํด์ ํ ๋ฐํด๋ง ๋๊ฒ ํธ๋ ๊ฒ ๋ ํจ์จ์ ์ธ ๋ฐฉ๋ฒ์ธ ๋ฏ!
๐พ ๊ตฌํ ์ฝ๋ (์๋ฐ)
class Solution {
public ListNode middleNode(ListNode head) {
int length = 1;
int half;
int cur = 0;
ListNode h;
h = head;
// ๋ฆฌ์คํธ์ ๊ธธ์ด ๊ตฌํ๊ธฐ
while (h.next != null) {
h = h.next;
length++;
}
half = length / 2;
while (cur < half) {
cur++;
head = head.next;
}
return head;
}
}
'Algorithm > LeetCode' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[LeetCode] 1544. Make The String Great (java) (0) | 2024.04.06 |
---|---|
[LeetCode] 1913. Maximum Product Difference Between Two Pairs (java) (0) | 2023.12.19 |
[LeetCode] #1887. Reduction Operations to Make the Array Elements Equal (1) | 2023.11.19 |