Skip to content

Commit 6989227

Browse files
authored
Merge pull request onlyliuxin#31 from twbbb/master
commit
2 parents b520d9b + 55e058d commit 6989227

File tree

13 files changed

+347
-1
lines changed

13 files changed

+347
-1
lines changed

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: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
package com.coding.basic;
2+
3+
public class ArrayList implements List {
4+
5+
private int size = 0;
6+
7+
8+
private Object[] elementData = new Object[100];
9+
10+
private int stepLength = 50;
11+
12+
public void add(Object o){
13+
if(size > elementData.length)
14+
{
15+
Object[] elementDataNew = new Object[elementData.length + stepLength];
16+
System.arraycopy(elementData, 0, elementDataNew, 0, elementData.length);
17+
elementData = elementDataNew;
18+
}
19+
20+
elementData[size] = o;
21+
size++;
22+
23+
}
24+
public void add(int index, Object o){
25+
if(size > elementData.length)
26+
{
27+
Object[] elementDataNew = new Object[elementData.length + stepLength];
28+
System.arraycopy(elementData, 0, elementDataNew, 0, elementData.length);
29+
elementData = elementDataNew;
30+
}
31+
System.arraycopy(elementData, index, elementData, index+1, size-index+1);
32+
elementData[index] = o;
33+
size++;
34+
35+
}
36+
37+
public Object get(int index){
38+
return elementData[index];
39+
}
40+
41+
public Object remove(int index){
42+
Object obj = elementData[index];
43+
System.arraycopy(elementData, index+1, elementData, index, size-index-1);
44+
size--;
45+
return obj;
46+
}
47+
48+
public int size(){
49+
return size;
50+
}
51+
52+
public Iterator iterator(){
53+
return null;
54+
}
55+
56+
public String toString()
57+
{
58+
StringBuffer sb = new StringBuffer();
59+
for(int i=0;i<size;i++)
60+
{
61+
if(i!=0)
62+
{
63+
sb.append(",");
64+
}
65+
sb.append(elementData[i]);
66+
}
67+
return sb.toString();
68+
69+
}
70+
}
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+
}

group08/283677872/test

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)