From f5447b09c3087b5e8b0c392644c8fe52b5d6d11b Mon Sep 17 00:00:00 2001 From: ebizhe Date: Wed, 13 Jan 2016 17:10:22 -0800 Subject: [PATCH 1/2] RemoveDuplicatesfromSortedList82 --- .../RemoveDuplicatesfromSortedList82.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 wenxiao /RemoveDuplicatesfromSortedList82.java diff --git a/wenxiao /RemoveDuplicatesfromSortedList82.java b/wenxiao /RemoveDuplicatesfromSortedList82.java new file mode 100644 index 0000000..fded505 --- /dev/null +++ b/wenxiao /RemoveDuplicatesfromSortedList82.java @@ -0,0 +1,26 @@ +package Classone; + +public class RemoveDuplicatesfromSortedList82 { + public ListNode deleteDuplicates(ListNode head){ + if(head ==null|| head.next==null) return head; + + ListNode p = new ListNode(0); + p.next = head; + ListNode prev = p; + ListNode curr = head; + + while(curr !=null){ + while(curr.next !=null && prev.next.val == curr.next.val){ + curr = curr.next; + } + if(prev.next == curr){ + prev = prev.next; + }else{ + prev.next = curr.next; + } + curr = curr.next; + } + + return p.next; + } +} From 13a53496f94ec0371dc242817b973d5a8c40b2a7 Mon Sep 17 00:00:00 2001 From: ebizhe Date: Wed, 13 Jan 2016 17:13:11 -0800 Subject: [PATCH 2/2] no message --- wenxiao /MergeTwoSortedLists21.java | 28 ++++++++++++++++++++++++++++ wenxiao /ReverseLinkedListII92.java | 29 +++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 wenxiao /MergeTwoSortedLists21.java create mode 100644 wenxiao /ReverseLinkedListII92.java diff --git a/wenxiao /MergeTwoSortedLists21.java b/wenxiao /MergeTwoSortedLists21.java new file mode 100644 index 0000000..9c11c4d --- /dev/null +++ b/wenxiao /MergeTwoSortedLists21.java @@ -0,0 +1,28 @@ +package Classone; + +public class MergeTwoSortedLists21 { + public ListNode mergeTwoList(ListNode l1, ListNode l2){ + if(l1 == null) return l2; + if(l2 == null) return l1; + + ListNode l = new ListNode(0); + ListNode l3 = l; + while(l1 != null && l2 != null){ + if(l1.val < l2.val){ + l3.next = l1; + l1 = l1.next; + }else{ + l3.next = l2; + l2 = l2.next; + } + l3 = l3.next; + } + if(l1 !=null){ + l3.next = l1; + } + if(l2 != null){ + l3.next = l2; + } + return l.next; + } +} diff --git a/wenxiao /ReverseLinkedListII92.java b/wenxiao /ReverseLinkedListII92.java new file mode 100644 index 0000000..655fa65 --- /dev/null +++ b/wenxiao /ReverseLinkedListII92.java @@ -0,0 +1,29 @@ +package Classone; + +public class ReverseLinkedListII92 { + public ListNode reverseBetween(ListNode head, int m, int n){ + if(head ==null || head.next ==null) return head; + + ListNode p = new ListNode(0); + p.next = head; + ListNode prev = p; + ListNode curr = null; + ListNode next = null; + + for(int i = 0; i < n; i++){ + if(i < m - 1){ + prev = prev.next; + }else if( i == m -1){ + curr = prev.next; + next = curr.next; + }else{ + curr.next = next.next; + next.next = prev.next; + prev.next = next; + next = curr.next; + } + } + return p.next; + + } +}