자바 판 데이터 구조
4401 단어 자바
http://blog.csdn.net/baoyiming1991/article/details/6265743
public class SqList<E> {
private static int INITSIZE=5;
private static int INCREASESIZE = 2;
private Object[] data = null;
private int length;
private int listsize;
public SqList() {
data = new Object[INITSIZE];
length = 0;
listsize = INITSIZE;
}
public boolean AddElement(E e) {
if(length == listsize) {
Object[] newdata = new Object[listsize+INCREASESIZE];
for (int i=0;i<length;i++) {
newdata[i] = data[i];
}
listsize = listsize+INCREASESIZE;
data = newdata;
}
data[length] = e;
length++;
return true;
}
public E get(int index) {
if (index <1 || index > length)
return null;
return (E) data[index-1];
}
public boolean set(int index, E e) {
if(index <1 || index > length)
return false;
data[index-1] = e;
return true;
}
public boolean insert(int index, E e) {
if (index <1 || index >length+1)
return false;
if (e==null)
return false;
if (length == listsize) {
}
for (int i=length-1; i>=index-1;i--) {
data[i+1] = data[i];
}
data[index-1] = e;
return true;
}
public boolean delete(int index) {
if(index<1 || index > this.length) {
return false;
}
for (int i=index; i<this.length; i++) {
data[i-1] = data[i];
}
this.length--;
return true;
}
}
Link List http://blog.csdn.net/baoyiming1991/article/details/6266147
public class LinkList<E> {
public LLNode<E> head;
public LinkList() {
head = new LLNode<E>();
head.next = null;
}
public boolean add(E e) {
LLNode<E> cursor = head;
while (cursor.next!=null) {
cursor = cursor.next;
}
LLNode<E> newnode = new LLNode<E>();
newnode.data = e;
newnode.next = null;
cursor.next = newnode;
return true;
}
public boolean insert(int index, E e) {
if (e==null)
return false;
LLNode<E> cursor = head;
int count = 1;
while (count < index && cursor!=null) {
count++;
cursor = cursor.next;
}
if(count == index && cursor !=null) {
LLNode<E> newnode = new LLNode<E>();
newnode.data = e;
LLNode<E> temp = cursor.next;
cursor.next = newnode;
newnode.next = temp;
return true;
}
return false;
}
public E get(int index) {
if(index<1)
return null;
LLNode<E> cursor = head.next;
int count = 1;
while (count < index && cursor !=null) {
count++;
cursor=cursor.next;
}
if (count == index && cursor !=null) {
return cursor.data;
}
return null;
}
public boolean delete(int index) {
if(index<1)
return false;
int count =1;
LLNode<E> cursor = head;
while (count<index && cursor.next !=null) {
count ++;
cursor = cursor.next;
}
if (count == index && cursor.next !=null) {
return true;
}
return false;
}
}
class LLNode<E> {
public E data;
public LLNode<E> next;
}
stack and queue http://blog.csdn.net/baoyiming1991/article/details/6266339
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.