diff --git a/.project b/.project new file mode 100644 index 0000000000..6b4d50ed9a --- /dev/null +++ b/.project @@ -0,0 +1,11 @@ + + + coding2017 + + + + + + + + diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000000..4824b80263 --- /dev/null +++ b/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git "a/group20/423184723/Test/\345\215\232\345\256\242\345\234\260\345\235\200" "b/group20/423184723/Test/\345\215\232\345\256\242\345\234\260\345\235\200" new file mode 100644 index 0000000000..b5457af5b6 --- /dev/null +++ "b/group20/423184723/Test/\345\215\232\345\256\242\345\234\260\345\235\200" @@ -0,0 +1 @@ +http://www.cnblogs.com/yyssyh213/p/6442285.html \ No newline at end of file diff --git a/group20/423184723/src/basic/ArrayList.java b/group20/423184723/src/basic/ArrayList.java new file mode 100644 index 0000000000..64a19bea8e --- /dev/null +++ b/group20/423184723/src/basic/ArrayList.java @@ -0,0 +1,78 @@ +package com.coding.basic; + +import com.sun.media.sound.EmergencySoundbank; + +public class ArrayList implements List { + /** + * 列表中元素的个数 + */ + private int size = 0; + + /** + * 初始化数组大小 + */ + private int arraySize = 100; + /** + * 初始化数组 + */ + private Object[] elementData = new Object[arraySize]; + + /** + * 添加方法 + */ + public void add(Object o){ + if(size>=(arraySize*0.75)){ + Object [] target = new Object[(int) (arraySize*1.5)]; + System.arraycopy(elementData,0,target,0,arraySize); + target[size-1] = o; + size++; + }else if(size<(arraySize*0.75)){ + elementData[size-1]=o; + size++; + } + } + /** + * 根据索引添加方法 + */ + public void add(int index, Object o){ + if(size >= arraySize*0.75){ + Object [] target = new Object[(int) (arraySize*1.5)]; + System.arraycopy(elementData,0,target,0,arraySize); + for (int j = target.length;j>=index;j--){ + target[j-1] = target[j-2]; + } + target[index] = o; + size++; + }else if(size < arraySize*0.75){ + for (int j = elementData.length;j>=index;j--){ + elementData[j-1] = elementData[j-2]; + } + elementData[index] = o; + size++; + } + } + /** + * 根据索引获取对象 + */ + public Object get(int index){ + return elementData[index]; + } + /** + * 根据索引移除对象 + */ + public Object remove(int index){ + for (int i = index; i < elementData.length; i++) { + elementData[i]=elementData[i+1]; + size++; + } + return elementData[index]; + } + /** + * 获取数组大小 + */ + public int size(){ + return this.size; + } + + +} diff --git a/group20/423184723/src/com/coding/basic/BinaryTreeNode.java b/group20/423184723/src/basic/BinaryTreeNode.java similarity index 100% rename from group20/423184723/src/com/coding/basic/BinaryTreeNode.java rename to group20/423184723/src/basic/BinaryTreeNode.java diff --git a/group20/423184723/src/com/coding/basic/Iterator.java b/group20/423184723/src/basic/Iterator.java similarity index 100% rename from group20/423184723/src/com/coding/basic/Iterator.java rename to group20/423184723/src/basic/Iterator.java diff --git a/group20/423184723/src/basic/LinkedList.java b/group20/423184723/src/basic/LinkedList.java new file mode 100644 index 0000000000..9caf065304 --- /dev/null +++ b/group20/423184723/src/basic/LinkedList.java @@ -0,0 +1,146 @@ +package com.coding.basic; + +import com.coding.basic.LinkedList.Node; + +public class LinkedList implements List { + + private Node head; + private int size; + + public void add(Object o){ + if (head.data == null) { + head.data = o; + head.next = null; + size++; + return; + } + Node node = new Node(o); + Node curr = head; + while (curr.next != null) { + curr = curr.next; + } + curr.next = node; + size++; + } + public void add(int index , Object o){ + if (index < 0 || index > size) { + System.out.println(index + "无效指数"); + return; + } + if (head.data == null) { + if (index == 0) { + head.data = o; + head.next = null; + size++; + return; + } else { + System.out.println("无效指数"); + return; + } + } + Node node = new Node(o); + Node curr = head; + for (int i = 0; i < index - 1; i++) { + curr = curr.next; + } + Node temp = curr.next; + curr.next = node; + node.next = temp; + size++; + } + public Object get(int index){ + if (index < 0 || index > size) { + System.out.println(index + " is invalid index!"); + return null; + } + Node result = head; + for (int i = 0; i < index; i++) { + result = result.next; + } + return result; + } + public Object remove(int index){ + if (index < 0 || index > size) { + System.out.println(index + " is invalid index!"); + return null; + } + Node curr = head; + for (int i = 0; i < index - 1; i++) { + curr = curr.next; + } + Node result = curr.next; + curr.next = curr.next.next; + size--; + return result; + } + + public int size(){ + return this.size; + } + + public void addFirst(Object o){ + if (head.data == null) { + head.data = o; + head.next = null; + size++; + return; + } + Node temp = head; + head = new Node(o); + head.next = temp; + size++; + } + public void addLast(Object o){ + if (head.data == null) { + head.data = o; + head.next = null; + size++; + return; + } + Node node = new Node(o); + Node curr = head; + while (curr.next != null) { + curr = curr.next; + } + curr.next = node; + size++; + } + public Object removeFirst(){ + if (head.data == null) { + return null; + } + Node result = head; + head = head.next; + size--; + return result; + } + public Object removeLast(){ + if (head.data == null) { + return null; + } + Node curr = head; + for (int i = 0; i < size - 1; i++) { + curr = curr.next; + } + Node result = curr.next; + curr.next = null; + size--; + return result; + } + public Iterator iterator(){ + return null; + } + + + private static class Node{ + Object data; + Node next; + public Node(Object o) { + data = o; + next = null; + } + + + + } +} diff --git a/group20/423184723/src/com/coding/basic/List.java b/group20/423184723/src/basic/List.java similarity index 100% rename from group20/423184723/src/com/coding/basic/List.java rename to group20/423184723/src/basic/List.java diff --git a/group20/423184723/src/basic/Queue.java b/group20/423184723/src/basic/Queue.java new file mode 100644 index 0000000000..bb4e6bef5c --- /dev/null +++ b/group20/423184723/src/basic/Queue.java @@ -0,0 +1,29 @@ +package com.coding.basic; + +public class Queue { + + private LinkedList list = new LinkedList(); + public void enQueue(Object o){ + list.add(o); + } + + public Object deQueue(){ + int length = list.size(); + if (length == 0) { + return null; + } + return list.removeFirst(); + } + + public boolean isEmpty(){ + if (list.size() == 0) { + return true; + } else { + return false; + } + } + + public int size(){ + return list.size; + } +} diff --git a/group20/423184723/src/basic/Stack.java b/group20/423184723/src/basic/Stack.java new file mode 100644 index 0000000000..6f3def6f0f --- /dev/null +++ b/group20/423184723/src/basic/Stack.java @@ -0,0 +1,35 @@ +package com.coding.basic; + +public class Stack { + private ArrayList elementData = new ArrayList(); + + public void push(Object o){ + elementData.add(o); + } + + public Object pop(){ + int length = elementData.size(); + if (length == 0) { + return null; + } + return elementData.remove(length - 1); + } + + public Object peek(){ + int length = elementData.size(); + if (length == 0) { + return null; + } + return elementData.get(length - 1); + } + public boolean isEmpty(){ + if (elementData.size() != 0) { + return false; + } else { + return true; + } + } + public int size(){ + return elementData.size(); + } +} diff --git a/group20/423184723/src/com/coding/basic/ArrayList.java b/group20/423184723/src/com/coding/basic/ArrayList.java deleted file mode 100644 index 1f185736f9..0000000000 --- a/group20/423184723/src/com/coding/basic/ArrayList.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.coding.basic; - -public class ArrayList implements List { - - private int size = 0; - - private Object[] elementData = new Object[100]; - - public void add(Object o){ - - } - public void add(int index, Object o){ - - } - - public Object get(int index){ - return null; - } - - public Object remove(int index){ - return null; - } - - public int size(){ - return -1; - } - - public Iterator iterator(){ - return null; - } - -} diff --git a/group20/423184723/src/com/coding/basic/LinkedList.java b/group20/423184723/src/com/coding/basic/LinkedList.java deleted file mode 100644 index e2c4e5e795..0000000000 --- a/group20/423184723/src/com/coding/basic/LinkedList.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.coding.basic; - -public class LinkedList implements List { - - private Node head; - - public void add(Object o){ - - } - public void add(int index , Object o){ - - } - public Object get(int index){ - return null; - } - public Object remove(int index){ - return null; - } - - public int size(){ - return -1; - } - - public void addFirst(Object o){ - - } - public void addLast(Object o){ - - } - public Object removeFirst(){ - return null; - } - public Object removeLast(){ - return null; - } - public Iterator iterator(){ - return null; - } - - - private static class Node{ - Object data; - Node next; - - } -} diff --git a/group20/423184723/src/com/coding/basic/Queue.java b/group20/423184723/src/com/coding/basic/Queue.java deleted file mode 100644 index 36e516e266..0000000000 --- a/group20/423184723/src/com/coding/basic/Queue.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.coding.basic; - -public class Queue { - - public void enQueue(Object o){ - } - - public Object deQueue(){ - return null; - } - - public boolean isEmpty(){ - return false; - } - - public int size(){ - return -1; - } -} diff --git a/group20/423184723/src/com/coding/basic/Stack.java b/group20/423184723/src/com/coding/basic/Stack.java deleted file mode 100644 index a5a04de76d..0000000000 --- a/group20/423184723/src/com/coding/basic/Stack.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.coding.basic; - -public class Stack { - private ArrayList elementData = new ArrayList(); - - public void push(Object o){ - } - - public Object pop(){ - return null; - } - - public Object peek(){ - return null; - } - public boolean isEmpty(){ - return false; - } - public int size(){ - return -1; - } -}