package com.coding.basic.datastructure; import com.coding.basic.datastructure.array.ArrayList; import com.coding.basic.datastructure.linklist.LinkedList; import com.coding.basic.datastructure.stack.Stack; import org.junit.Test; /** * Created by zt on 2017/2/19. */ public class TestDataStructure { @Test public void testLinkedList() { LinkedList list = new LinkedList(); for (int i = 0; i < 5; i++) { list.add(i); } list.add(0, -1); list.remove(1); list.removeLast(); list.addFirst(999); list.removeFirst(); System.out.println("list size : " + list.size()); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } java.util.LinkedList list1 = new java.util.LinkedList(); list1.add(0, 2); System.out.print(list1.get(0)); } @Test public void testStack() { Stack stack = new Stack(); stack.push(1); stack.push(2); stack.pop(); System.out.println(stack.size()); Object obj = stack.peek(); } @Test public void testQueue() { Queue queue = new Queue(); queue.enQueue(1); queue.enQueue(2); queue.enQueue(3); Object object = queue.deQueue(); System.out.println("dqueue object : " + object); System.out.println(queue.isEmpty()); System.out.println(queue.size()); } @Test public void testArrayList() { List arrayList = new ArrayList(); for (int i = 0; i < 30; i++) { arrayList.add(i); } arrayList.add(0, -2); arrayList.add(1, -1); System.out.println(arrayList.remove(1)); System.out.println("ArrayList size : " + arrayList.size()); for (int i = 0; i < arrayList.size(); i++) { System.out.println(arrayList.get(i)); } } @Test public void testReverseLinkedList() { LinkedList linkedList = new LinkedList(); for (int i = 0; i < 10; i++) { linkedList.add(i); } linkedList.reverse(); printLinkedList(linkedList); } @Test public void testRemoveLinkedList() { LinkedList linkedList = new LinkedList(); for (int i = 0; i < 10; i++) { linkedList.add(i); } linkedList.remove(0, 8); printLinkedList(linkedList); } @Test public void testRemoveFirstHalf() { LinkedList linkedList = new LinkedList(); for (int i = 0; i < 1; i++) { linkedList.add(i); } linkedList.removeFirstHalf(); printLinkedList(linkedList); } @Test public void testRemoveDuplicateValues() { LinkedList linkedList = new LinkedList(); linkedList.add(1); linkedList.add(2); linkedList.add(2); linkedList.add(2); linkedList.add(3); linkedList.add(3); linkedList.add(4); linkedList.add(4); linkedList.removeDuplicateValues(); printLinkedList(linkedList); } @Test public void testLinkedListIterator() { LinkedList linkedList = new LinkedList(); for (int i = 0; i < 10; i++) { linkedList.add(i); } Iterator iterator = linkedList.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } } @Test public void testGetElements() { LinkedList linkedList = new LinkedList(); linkedList.add(11); linkedList.add(101); linkedList.add(201); linkedList.add(301); linkedList.add(401); linkedList.add(501); linkedList.add(601); linkedList.add(701); LinkedList indexList = new LinkedList(); indexList.add(0); indexList.add(3); indexList.add(4); indexList.add(6); int[] result = linkedList.getElements(indexList); for (int i = 0; i < result.length; i++) { System.out.println(result[i]); } } @Test public void testRemoveRange() { LinkedList linkedList = new LinkedList(); linkedList.add(1); linkedList.add(2); linkedList.add(3); linkedList.add(3); linkedList.add(4); linkedList.add(6); linkedList.add(6); linkedList.removeRange(1, 4); printLinkedList(linkedList); } private void printLinkedList(LinkedList linkedList) { for (int i = 0; i < linkedList.size(); i++) { System.out.print(linkedList.get(i) + ","); } } }