Skip to content

Commit fd9dc90

Browse files
committed
commit
1 parent f8ed6ad commit fd9dc90

File tree

16 files changed

+372
-10
lines changed

16 files changed

+372
-10
lines changed

group08/283677872/.classpath

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<classpath>
33
<classpathentry kind="src" path="src"/>
4+
<classpathentry kind="src" path="2-26"/>
45
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
56
<classpathentry kind="output" path="bin"/>
67
</classpath>

group08/283677872/2-26/.classpath

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<classpath>
3+
<classpathentry kind="src" path="src"/>
4+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
5+
<classpathentry kind="output" path="bin"/>
6+
</classpath>

group08/283677872/2-26/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/bin/

group08/283677872/2-26/.project

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>2-26</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.jdt.core.javabuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
13+
</buildSpec>
14+
<natures>
15+
<nature>org.eclipse.jdt.core.javanature</nature>
16+
</natures>
17+
</projectDescription>
Binary file not shown.
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
package com.coding.basic;
2+
3+
public class ArrayList implements List {
4+
5+
private int size = 0;
6+
7+
private Object[] elementData = new Object[100];
8+
9+
private int stepLength = 50;
10+
11+
public void add(Object o){
12+
if(size > elementData.length)
13+
{
14+
Object[] elementDataNew = new Object[elementData.length + stepLength];
15+
System.arraycopy(elementData, 0, elementDataNew, 0, elementData.length);
16+
elementData = elementDataNew;
17+
}
18+
19+
elementData[size] = o;
20+
size++;
21+
22+
}
23+
public void add(int index, Object o){
24+
if(size > elementData.length)
25+
{
26+
Object[] elementDataNew = new Object[elementData.length + stepLength];
27+
System.arraycopy(elementData, 0, elementDataNew, 0, elementData.length);
28+
elementData = elementDataNew;
29+
}
30+
System.arraycopy(elementData, index, elementData, index+1, size-index+1);
31+
elementData[index] = o;
32+
size++;
33+
34+
}
35+
36+
public Object get(int index){
37+
return elementData[index];
38+
}
39+
40+
public Object remove(int index){
41+
Object obj = elementData[index];
42+
System.arraycopy(elementData, index+1, elementData, index, size-index-1);
43+
size--;
44+
return obj;
45+
}
46+
47+
public int size(){
48+
return size;
49+
}
50+
51+
public Iterator iterator(){
52+
return null;
53+
}
54+
55+
public String toString()
56+
{
57+
StringBuffer sb = new StringBuffer();
58+
for(int i=0;i<size;i++)
59+
{
60+
if(i!=0)
61+
{
62+
sb.append(",");
63+
}
64+
sb.append(elementData[i]);
65+
}
66+
return sb.toString();
67+
68+
}
69+
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package com.coding.basic;
2+
3+
public class BinaryTreeNode {
4+
5+
private Object data;
6+
private BinaryTreeNode left;
7+
private BinaryTreeNode right;
8+
9+
public Object getData() {
10+
return data;
11+
}
12+
public void setData(Object data) {
13+
this.data = data;
14+
}
15+
public BinaryTreeNode getLeft() {
16+
return left;
17+
}
18+
public void setLeft(BinaryTreeNode left) {
19+
this.left = left;
20+
}
21+
public BinaryTreeNode getRight() {
22+
return right;
23+
}
24+
public void setRight(BinaryTreeNode right) {
25+
this.right = right;
26+
}
27+
28+
public BinaryTreeNode insert(Object o){
29+
return null;
30+
}
31+
32+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package com.coding.basic;
2+
3+
public interface Iterator {
4+
public boolean hasNext();
5+
public Object next();
6+
7+
}
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
package com.coding.basic;
2+
3+
public class LinkedList implements List {
4+
5+
private Node head;
6+
7+
public void add(Object o){
8+
if(head==null)
9+
{
10+
head = new Node();
11+
head.data = o;
12+
}
13+
else
14+
{
15+
Node node = new Node();
16+
getLastNode(head).next = node;
17+
node.data = o;
18+
}
19+
20+
}
21+
public Node getLastNode(Node node){
22+
if(node.next!=null)
23+
{
24+
return getLastNode(node.next);
25+
}
26+
else
27+
{
28+
return node;
29+
}
30+
}
31+
32+
public void add(int index , Object o){
33+
if(index==0)
34+
{
35+
addFirst(o);
36+
}
37+
else
38+
{
39+
Node node1 = getNode(index-1,head);
40+
Node node2 = getNode(1,node1);
41+
Node node = new Node();
42+
node.data = o;
43+
node.next = node2;
44+
node1.next = node;
45+
46+
}
47+
48+
}
49+
public Node getNode(int index,Node node){
50+
if(index==0)
51+
{
52+
return node;
53+
}
54+
else
55+
{
56+
return getNode(--index,node.next);
57+
}
58+
59+
}
60+
public Object get(int index){
61+
return getNode(index,head).data;
62+
}
63+
public Object remove(int index){
64+
Node node1 = getNode(index-1,head);
65+
Node node2 = getNode(1,node1);
66+
Node node3 = getNode(1,node2);
67+
node1.next = node3;
68+
return node2.data;
69+
}
70+
71+
public int size(){
72+
int i = 0;
73+
Node node = head;
74+
while(node.next!=null)
75+
{
76+
node = node.next;
77+
i++;
78+
}
79+
return i;
80+
}
81+
82+
public void addFirst(Object o){
83+
Node node = new Node();
84+
node.data =o;
85+
node.next = head;
86+
head = node;
87+
}
88+
public void addLast(Object o){
89+
Node node = new Node();
90+
node.data =o;
91+
getLastNode(head).next = node;
92+
93+
}
94+
public Object removeFirst(){
95+
Node node = head;
96+
Node node1 = getNode(1,head);
97+
head = node1;
98+
return node.data;
99+
}
100+
public Object removeLast(){
101+
int size = size();
102+
return remove(size -1);
103+
}
104+
public Iterator iterator(){
105+
return null;
106+
}
107+
108+
public String toString()
109+
{
110+
StringBuffer sb = new StringBuffer();
111+
112+
Node node = head;
113+
while(node.next!=null)
114+
{
115+
sb.append(node.data).append(",");
116+
node = node.next;
117+
118+
}
119+
sb.append(node.data);
120+
return sb.toString();
121+
122+
}
123+
private static class Node{
124+
Object data;
125+
Node next;
126+
127+
128+
129+
}
130+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package com.coding.basic;
2+
3+
public interface List {
4+
public void add(Object o);
5+
public void add(int index, Object o);
6+
public Object get(int index);
7+
public Object remove(int index);
8+
public int size();
9+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.coding.basic;
2+
3+
import java.util.Arrays;
4+
5+
public class Main {
6+
7+
public static void main(String[] args) {
8+
LinkedList al = new LinkedList();
9+
al.add(0);
10+
al.add(1);
11+
al.add(2);
12+
al.add(3);
13+
al.add(4);
14+
al.add(5,-1);
15+
System.out.println(al.remove(1));
16+
System.out.println(al);
17+
}
18+
19+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.coding.basic;
2+
3+
public class Queue {
4+
private LinkedList elementData = new LinkedList();
5+
6+
public void enQueue(Object o){
7+
elementData.add(o);;
8+
}
9+
10+
public Object deQueue() throws Exception{
11+
if(isEmpty())
12+
{
13+
throw new Exception("Queue deQueue error");
14+
}
15+
return elementData.removeFirst();
16+
}
17+
18+
public boolean isEmpty(){
19+
return elementData.size()>0;
20+
}
21+
22+
public int size(){
23+
return elementData.size();
24+
}
25+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package com.coding.basic;
2+
3+
public class Stack {
4+
private ArrayList elementData = new ArrayList();
5+
6+
public void push(Object o){
7+
elementData.add(o);
8+
}
9+
10+
public Object pop() throws Exception{
11+
if(isEmpty())
12+
{
13+
throw new Exception("Stack pop error");
14+
}
15+
return elementData.remove(elementData.size()-1);
16+
}
17+
18+
public Object peek() throws Exception{
19+
if(isEmpty())
20+
{
21+
throw new Exception("Stack pop error");
22+
}
23+
return elementData.get(elementData.size()-1);
24+
}
25+
public boolean isEmpty(){
26+
return elementData.size()>0;
27+
}
28+
public int size(){
29+
return elementData.size();
30+
}
31+
}
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,25 @@
11
package com.coding.basic;
22

33
public class Queue {
4+
private LinkedList elementData = new LinkedList();
45

56
public void enQueue(Object o){
7+
elementData.add(o);;
68
}
79

8-
public Object deQueue(){
9-
return null;
10+
public Object deQueue() throws Exception{
11+
if(isEmpty())
12+
{
13+
throw new Exception("Queue deQueue error");
14+
}
15+
return elementData.removeFirst();
1016
}
1117

1218
public boolean isEmpty(){
13-
return false;
19+
return elementData.size()>0;
1420
}
1521

1622
public int size(){
17-
return -1;
23+
return elementData.size();
1824
}
1925
}

0 commit comments

Comments
 (0)