-
[Day7] 876. Middle of the Linked List / 86. Partition List (LeetCode)@StudY/.algorithm 2019. 2. 22. 14:12
빛나는 졸업장을 타느라 어제는 회사도 알고리즘 공부도 하루 휴식!
876. Middle of the Linked List Easy
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode middleNode(ListNode head) {
ListNode middle = head;
ListNode counter = head;
int count=1;
while(counter.next!=null) {
count++;
counter = counter.next;
}
for (int i=0; i<count/2; i++) {
middle = middle.next;
}
return middle;
}
}
Accepted 0 ms 36.8 MB java /**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode middleNode(ListNode head) {
ListNode middle = head;
int count=1;
while(head.next!=null) {
count++;
head = head.next;
}
for (int i=0; i<count/2; i++) {
middle = middle.next;
}
return middle;
}
}
Accepted 1 ms 36.7 MB java 86. Partition List Medium
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode partition(ListNode head, int x) {
if (head==null) return head;
ListNode result, iter, tail, temp;
result = new ListNode(0);
tail = new ListNode(0);
iter = result;
iter.next = tail;
while (head.next != null) {
if (head.val < x) {
temp = iter.next;
iter.next = head;
head = head.next;
iter.next.next = temp;
iter = iter.next;
} else {
temp = tail.next;
tail.next = head;
head = head.next;
tail.next.next = temp;
tail = tail.next;
}
}
if (head.val < x) {
temp = iter.next;
iter.next = head;
head = head.next;
iter.next.next = temp;
iter = iter.next;
} else {
temp = tail.next;
tail.next = head;
head = head.next;
tail.next.next = temp;
tail = tail.next;
}
iter.next = iter.next.next;
return result.next;
}
}
Accepted 0 ms 36.8 MB java '@StudY > .algorithm' 카테고리의 다른 글
[Day10] 430. Flatten a Multilevel Doubly Linked List (0) 2019.02.28 [Day8/9] 409. Longest Palindrome (0) 2019.02.26 [Day6] 981. Time Based Key-Value Store (0) 2019.02.20 [Day4] 529. Minesweeper (0) 2019.02.18 [Day3] 108. Convert Sorted Array to Binary Search Tree (0) 2019.02.15 댓글