public static void Execute() { var lst = ListNode.Create(new[] { 1, 2, 3, 4 }); var r = RemoveNthFromEndImpl(lst, 4); System.Console.WriteLine(r.ToString()); }
public ListNode Solve(int[] l1, int[] l2) { var node1 = ListNode.Create(l1); var node2 = ListNode.Create(l2); return(Solve(node1, node2)); }
public static void Execute() { var list = ListNode.Create(new[] { 1, 2, 3, 4, 5 }); ReorderListImpl(list); Console.WriteLine(list); }
public void Test(int[] input, int[] expect) { var so = GetSo; var result = so.DeleteDuplicates(ListNode.Create(input)).ToArray(); Assert.Equal(expect, result); }
public void TestSimple() { Assert.IsTrue(ListNode.Equals(ListNode.Create(new int[] { 1, 2, 3, 4, 5 }), util.MergeTwoLists(ListNode.Create(new int[] { 1, 2, 3 }), ListNode.Create(new int[] { 4, 5 })))); Assert.IsTrue(ListNode.Equals(ListNode.Create(new int[] { 1 }), util.MergeTwoLists(null, ListNode.Create(new int[] { 1 })))); }
public static void Execute() { //var source = ListNode.Create(new[] { 1, 2, 6, 3, 4, 5, 6 }); var source = ListNode.Create(new[] { 6, 6, 6 }); var output = RemoveLinkedListElementsImpl(source, 6); Console.WriteLine(output); }
public void Test(int[] input, int val, int[] expect) { var so = GetSo; var ln = ListNode.Create(input); var result = so.RemoveElements(ln, val); Assert.Equal(expect, result.ToArray()); }
public void Test(int[] l1a, int[] l2a, int[] expect) { var l1 = ListNode.Create(l1a); var l2 = ListNode.Create(l2a); var so = GetSo; var result = so.MergeTwoLists(l1, l2).ToArray(); Assert.Equal(expect, result); }
public static void Execute() { //var l = new[] { 1, 2, 4 }; //var r = new[] { 1, 3, 4 }; var l = new int[] { 2 }; var r = new[] { 1, 1, 1, 1 }; var result = MergeTwoSortedListsImpl(ListNode.Create(l), ListNode.Create(r)); Console.WriteLine(result); }
public void TestSimple() { Assert.IsTrue( ListNode.Equals( ListNode.Create(new int[] { 2 }), this.util.RemoveNthFromEnd(ListNode.Create(new int[] { 1, 2 }), 2))); Assert.IsTrue( ListNode.Equals( ListNode.Create(new int[] { 1, 2, 4, 5 }), this.util.RemoveNthFromEnd(ListNode.Create(new int[] { 1, 2, 3, 4, 5 }), 3))); }
public void Test(int[] arr, int pos, bool expect) { var so = GetSo; var ln = ListNode.Create(arr); if (pos != -1) { ln.Tail().next = ln.At(pos); } var result = so.HasCycle(ln); Assert.Equal(expect, result); }
public void Test(int[] arr, int pos) { var so = GetSo; var ln = ListNode.Create(arr); if (pos != -1) // 我的At里是如果index不存在则返回null,但不能依赖它,因为正确效果是抛异常 { ln.Tail().next = ln.At(pos); } var result = so.DetectCycle(ln); Assert.Equal(pos == -1 ? null : ln.At(pos), result); }
void Test(int a, int b, int[] expects) { ListNode l1 = ListNode.Create(a); ListNode l2 = ListNode.Create(b); var solution = new Solution(); ListNode r = solution.AddTwoNumbers(l1, l2); foreach (int n in expects) { Assert.Equal(n, r.val); r = r.next; } Assert.Null(r); }
public static void Execute() { var output = ReverseLinkedListImpl(ListNode.Create(new[] { 1, 2, 3, 4, 5 })); Console.WriteLine(output); }
public static void Execute() { //Console.WriteLine(IsPalindromeImpl(ListNode.Create(new[] { 1, 2 }))); Console.WriteLine(IsPalindromeLinkedListImpl(ListNode.Create(new[] { 1, 2, 2, 1 }))); }
public static void Execute() { var output = DeleteDuplicatesImpl(ListNode.Create(new[] { 1, 1, 1 })); Console.WriteLine(output); }